**BASIC** (engleska skraćenica za **Beginner's All-purpose Symbolic Instruction Code**) je programski jezik za računala.

Kao programski jezik bio je iznimno popularan na kućnim računalima u 1980-tim godinama (ZX Spectrum, Commodore 64 i Commodore 128, Amiga, Amstrad, Texas Instruments TI-99/4A,...)
Poštuje svoj skup sintaksnih pravila (petlje, ispis, logičko ispitivanje, rad s datotekama, itd.). Vrlo je jednostavan za uporabu i lagan za učenje.

Povijest
--------

Struktura jezika
----------------

Ovisno o tome da li je interpretiran ili preveden, program može imati ili ne mora brojeve linija. Ukoliko ih ima implementirani su programski skokovi tipa GOTO i/ili GOSUB (umjesto brojeva programskih linija mogu biti i tekstualne labele).

### Sintaksa

IF-THEN-ELSE-END kontrolna struktura
BASIC jezici imaju vrlo jednostavnu sintaksu (sukladno imenu: **Beginner's** All-purpose...).   
  

#### Varijable

Ime varijable može imati do 256 znakova, ne smije počinjati brojem, velika i mala slova nisu važna, smije sadržavati znakove:
**abcdefghijklmnopqrstuvwxyz.0123456789** (uključujući i točku).

Postoji više tipova varijabli: 

**integer**: cijeli broj između -32,768 i 32,767  

**long**: cijeli broj između -2,147,483,648 i 2,147,483,647  

**single**: decimalni broj "jednostruke preciznosti"  

**double**: decimalni broj "dvostruke preciznosti"  

**string**: znakovi koji se ne shvaćaju kao brojevi  
  

#### Najčešće naredbe

Kratak (ali stvarno kratak) pregled najčešće korištenih naredbi:  
  

* **PRINT** - ispisuje tekst na ekran, npr.:

```
PRINT "Hello world!"
```
  

* **INPUT** - zahtijeva od korisnika da upiše tekst koji će biti upisan u jednu ili više varijabli:

```
INPUT "Upiši dva broja:", x, y
```

x i y su imena varijabli, a od korisnika zahtijeva da ih odvoji zarezom.
  

* **IF-THEN-ELSE** - naredbe grananja. Prijevod na hrvatski: AKO-ONDA-INAČE.

```
IF x > 10 THEN PRINT "Broj je veći od 10." ELSE PRINT "Broj je manji od 10."
```
  

* **GOTO** naredba je objašnjena pod podnaslovom Primjeri.
* **FOR-NEXT** petlja:

```
FOR i = 1 TO 10
    PRINT i
NEXT i

```

Ovo će ispisati brojeve od 1 do 10.
  

* **DO-LOOP** petlja:

```
i = 1
DO
    PRINT i
    i = i + 1
LOOP UNTIL i > 10

```

Ista stvar kao i u primjeru za FOR-NEXT petlju.

```
i = 1
DO
    PRINT i
    i = i + 1
LOOP WHILE i <= 10

```

Opet isto.
  

### Programske strukture

Dostupnost
----------

Primjeri
--------

Sljedeći program je primjer beskonačne petlje, i jedini način prekidanja jest korištenje BREAK signala.

```
10 PRINT "Ovo je mali BASIC program"
20 GOTO 10

```

Dijalekti
---------

Srodni jezici
-------------

* QBasic - verzija za DOS
* Amiga Basic - Basic na računalima Commodore Amiga
* Orao Basic - Basic na računalu PEL Varaždin ORAO MR102
* Microsoft Visual Basic - Basic za izradu Windows aplikacija
* Microsoft Visual Basic for Applications - Basic za izradu aplikacija u Office okruženju

Standardi
---------

* ANSI Standard for Minimal BASIC (ANSI X3.60-1978 "FOR MINIMAL BASIC")
* ISO Standard for Minimal BASIC (ISO/IEC 6373:1984 "DATA PROCESSING - PROGRAMMING LANGUAGES - MINIMAL BASIC")

Vanjske veze
------------

Metal Basic za Apple OS X Arhivirano 2004-08-02 na Wayback Machine-u   

Tutorial sa stranice Code-it.net Arhivirano 2007-09-27 na Wayback Machine-u

| * p
* r
* u
Programski jezici |
| --- |
| Ada • ALGOL • APL • AWK • BASIC • C • C++ • C# • COBOL • ColdFusion • Common Lisp • Delphi • Eiffel • Focus • Forth • FORTRAN • Haskell • IDL • Java • JavaScript • Lisp • Modula • Objective-C • OCaml • Pascal • Perl • PHP • Prolog • Python • Ruby • SAS • Scheme • Smalltalk • SQL • Visual Basic |

***BASIC*** na Wikimedijinoj ostavi