BASIC

Frå Wikipedia – det frie oppslagsverket

BASIC, som står for for Beginner's All-purpose Symbolic Instruction Code, er eit programmeringsspråk som vart utvikla i 1963 ved Dartmund College i USA med det målet at ein skulle gjere programmering enklare. BASIC er eit enkelt nybyrjarspråk som nyttar enkle engelskspråklege kommandoar.

Det finst fleire tilpassa dialektar av BASIC enn av nokon anna programmeringsspråk. Med få unntak nytta alle heimedatamaskiner på 1980 talet ein eller annan versjon av Basic som kommandotolk. Microsoft leverte GW-BASIC og seinare QBASIC som ein del av operativsystemet DOS. I 1991 kom VisualBasic som utvikla applikasjonar til å køyre under operativsystemet Windows.

Døme[endre | endre wikiteksten]

Nedanfor er nokre forskjellige døme på programmering som syner utviklinga av BASIC som programmeringsspråk.

Ustrukturert BASIC[endre | endre wikiteksten]

Amstrad BASIC

Dei første dialektane

Dømet nedanfor er laga for GW-BASIC, men skal kunne fungere i dei fleste dialektar av BASIC med minimale endringar.

10 INPUT "What is your name: ", U$
20 PRINT "Hello "; U$
30 INPUT "How many stars do you want: ", N
40 S$ = ""
50 FOR I = 1 TO N
60 S$ = S$ + "*"
70 NEXT I
80 PRINT S$
90 INPUT "Do you want more stars? ", A$
100 IF LEN(A$) = 0 THEN 90
110 A$ = LEFT$(A$, 1)
120 IF A$ = "Y" OR A$ = "y" THEN 30
130 PRINT "Goodbye ";U$
140 END

Strukturert BASIC[endre | endre wikiteksten]

Skjermskot frå QBasic

Andre-generasjon av Basic dialektar introduserte nye kjenneteikn til språket, primært relatert til strukturert og prosedyre-orientert programmering. Linjenummerering vart som regel utelate frå språket og erstatta med hopp-komando samt andre prosedyrar som gav eit enklare og meir fleksibelt språk. Dømet nedanfor er laga for Qbasic:

INPUT "What is your name: ", UserName$
PRINT "Hello "; UserName$
DO
  INPUT "How many stars do you want: ", NumStars
  Stars$ = STRING$(NumStars, "*") 
  PRINT Stars$
  DO
    INPUT "Do you want more stars? ", Answer$
  LOOP UNTIL Answer$ <> ""
  Answer$ = LEFT$(Answer$, 1)
LOOP WHILE UCASE$(Answer$) = "Y"
PRINT "Goodbye "; UserName$

«Moderne» BASIC[endre | endre wikiteksten]

Skjermskot frå FreeBasic

Tredje generasjon BASIC dialektar som til dømes Visual Basic og StarOffice Basic introduserte objekt orientert og event-driven programmering.

Option Explicit Off
Module stars
    Sub Main()
        Console.Write("What is your name: ")
        U$ = Console.ReadLine
        Console.WriteLine("Hello " + U$)
        Console.Write("How many stars do you want: ")
        N = Val(Console.ReadLine)
        S$ = ""
        For I = 1 To N
            S$ = S$ + "*"
        Next I
        Console.WriteLine(S$)
        Console.Write("Do you want more stars? ")
        A$ = Console.ReadLine
        If Len(A$) = 0 Then GoTo 90
        A$ = Left$(A$, 1)
        If A$ = "Y" Or A$ = "y" Then GoTo 30
        Console.Write("Goodbye ")
        For I = 1 To 200
            Console.Write(U$ + " ")
        Next I
        Console.WriteLine()
        End
    End Sub
End Module