BASIC: Разлика между версии
м Робот Добавяне: sh:BASIC |
м Робот Добавяне: kn:ಬೇಸಿಕ್ |
||
Ред 86: | Ред 86: | ||
[[ja:BASIC]] |
[[ja:BASIC]] |
||
[[kab:BASIC]] |
[[kab:BASIC]] |
||
[[kn:ಬೇಸಿಕ್]] |
|||
[[ko:베이직]] |
[[ko:베이직]] |
||
[[la:Basic]] |
[[la:Basic]] |
Версия от 04:38, 30 септември 2008
BASIC (Beginner's All-purpose Symbolic Instruction Code - многоцелеви език от символни инструкции за начинаещи) е език за програмиране от високо ниво. Той е създаден през 1963 год. от Джон Кемени (John Kemeny) и Томас Курц (Thomas Kurtz).
Синтаксис
Синтаксисът на BASIC се състои от прости команди (като PRINT - отпечатай, INPUT - въведи, IF - ако, GOTO - отиди на, и т.н.) и математически изрази.
Класически BASIC
При класическия BASIC, всички редове са номерирани, тъй като в първоначалните версии на BASIC, програмата се е въвеждала в интерактивен режим. Т.е. ако преди кода няма номер на реда, то кода се изпълнява веднага.
10 INPUT "What is your name: "; U$ 20 PRINT "Hello "; U$ 30 REM 40 INPUT "How many stars do you want: "; N 50 S$ = "" 60 FOR I = 1 TO N 70 S$ = S$ + "*" 80 NEXT I 90 PRINT S$ 100 REM 110 INPUT "Do you want more stars? "; A$ 120 IF LEN(A$) = 0 THEN GOTO 110 130 A$ = LEFT$(A$, 1) 140 IF (A$ = "Y") OR (A$ = "y") THEN GOTO 40 150 PRINT "Goodbye "; 160 FOR I = 1 TO 200 170 PRINT U$; " "; 180 NEXT I 190 PRINT
Модерен BASIC
Синтаксисът на модерният BASIC почти не се различава от този на класическия. При модерния BASIC обаче номерирането на редовете не е задължително, освен това се използва отместване на кода (познато от другите програмни езици като Pascal, C/C++, Fortran и др.), с което преглеждането на програмите на BASIC става по-лесно.
INPUT "What is your name"; UserName$ PRINT "Hello "; UserName$ DO INPUT "How many stars do you want"; NumStars Stars$ = "" Stars$ = REPEAT$("*", NumStars) ' <- ANSI BASIC --or-- Stars$ = STRING$(NumStars, "*") ' <- MS BASIC PRINT Stars$ DO INPUT "Do you want more stars"; Answer$ LOOP UNTIL Answer$ <> "" Answer$ = LEFT$(Answer$, 1) LOOP WHILE UCASE$(Answer$) = "Y" PRINT "Goodbye "; FOR I = 1 TO 200 PRINT UserName$; " "; NEXT I PRINT