Beginners' All-purpose Symbolic Instruction Code : code d'instructions tous usages pour débutants.
Fournir un langage de programmation simple et généraliste.
BASIC est un langage procédural, généralement interprété.
Ses lignes d'instructions sont numérotées, ce qui permet des branchements divers.
Domaine | Commentaire | |||
---|---|---|---|---|
Structures de données | Enumérations | Non | ||
Numériques | Entiers | INT var |
||
Flottants |
|
|||
Caractères | Unique | <em>var</em>$ |
||
Chaîne | <em>var</em>$ |
|||
Tableaux | DIM <em>tab</em>(<em>taille</em>) |
DIMension | ||
Structures de contrôle | Condition | IF condition THEN action1 ELSE action2
|
||
Boucle | Itération | FOR var=début TO fin:<em>action</em>:NEXT |
||
Suite | NEXT var |
|||
Stop |
|
|||
Branchement | GOTO |
Va à | ||
Sous-programme | GOSUB |
Va à sous-routine | ||
Retour de sous-programme | RETURN |
|||
Ecran | Effacement | CLS |
CLear Screen | |
Affichage | Expression | PRINT expression |
Imprime | |
Tabulation | TAB(<em>n</em>) |
|||
Positionnement | LOCATE ligne,colonne |
|||
Clavier | Lecture | Chaîne | var=CHR$ |
Lit |
Touche | var=INKEY$ |
|||
READ var |
||||
Commentaire | REM commentaire , ' commentaire |
REMark | ||
Aléatoire | RND(max) |
RaNDom | ||
Code ASCII | ASC(var) |
Des exemples de BASIC sont :
Un exemple de code source BASIC est :
10 REM ZOO Création aléatoire, sur poême de M. Butor 07/24/86<br> 30 CLS:CLEAR:DEFSTR
A-H:DEFINT I-T<br> 40 DIM A(2),B(14),C(14),L(14),M(14)<br> 50 A(1)="A la tombée de la nuit":A(2)="Quand se sont refermées les grilles"<br> 60 FOR I=1
TO 14:READ B(I):NEXT<br> 70 FOR I=1
TO 14:READ C(I):NEXT<br> 80 FOR J1=1 TO
14:L(J1)=J1:NEXT<br> 90 FOR J2=1 TO
14:M(J2)=J2:NEXT<br> 100 PRINT TAB(30)"ZOO":PRINT
TAB(30) STRING$(9,"="):PRINT<br> 110 PRINT
A(1):PRINT A(2)<br> 120 FOR I=1 TO 14<br> 130
J1=RND(14):IF L(J1)<1 THEN 130<br> 140
J2=RND(14):IF M(J2)<1 THEN 140<br> 150
IF J1=14 THEN D1="rêvent " ELSE
D1="rêve "<br> 160 IF J2=13 THEN D2="aux " ELSE D2="à "<br> 170
PRINT B(J1);" ";D1;D2;C(J2)<br> 180 L(J1)=0:M(J2)=0<br> 190
NEXT I<br> 200 PRINT:PRINT TAB(40)"Autre création ?":GOSUB 10000<br> 210 IF H<>"O" THEN 220 ELSE CLS : GOTO
80<br> 220 CLS:END<br> 10000 IF INKEY$<>""
THEN 10010<br> 10010 H=INKEY$:IF H="" THEN 10010 ELSE IF ASC(H)>95
THEN H=CHR$(ASC(H)-32)<br> 10020 RETURN<br> 10100
GOSUB 10000:IF ASC(H)>57
THEN S=ASC(H)-55 ELSE S=ASC(H)-48 10110
RETURN