Download - Programiranje Osnove Qbasic-A - Teorija
OSNOVNI POJMOVI:
1. JEZIK ZA PROGRAMIRANJE (PROGRAMSKI JEZIK)- je pismo, odnosno skup pravila i naredbi za operacije
nad nekim objektima
2. PROGRAMIRANJE- je izrada programa- je rješavanje problema na računalu pomoću jezika za
programiranje
3. PROGRAM- je niz logički povezanih naredbi
4. NAREDBE- su operacije nad podacima
5. PODACI- su znakovi kao što su slova,brojevi i ostali simboli- su svi znakovi tipkovnice
6. ALGORITAM- je skup pravila za rješavanje određenog problema, a
sastoji se od opisa skupa koraka
7. EDITOR- je prozor koji služi za rad s ASCII datotekama
(znakovima)
PREVODIOCI (JEZIČNI PREVODITELJI)
Mi najčešće programiramo (kodiramo, pišemo programe) u jednom od viših programskih jezika, pa da bi naše računalo moglo koristiti naš program, potrebno ga je prevesti u jezik razumljiv računalu, znači u strojni jezik računala. Za to se koriste jezici (programi) prevodioci (jezični prevoditelji).Dakle, programer kad programira piše zapravo tzv. izvorni kod (source code) programa koji se pomoću programa prevoditelja (compiler) i povezivača (linker) prevodi i povezuje u izvršni oblik (kod) .exe.PREVODIOCI – su programi koji naš izvorni program (kod) pretvaraju u izvršni oblik - strojni jezik.Razlikujemo:
1. INTERPRETERE (prevode naredbu po naredbu i svaku naredbu odmah izvršavaju) primjer: Basic ...
2. KOMPAJLERE(prvo prevode čitav program, kreiraju izvršnu verziju, koja se tek tada izvršava, izvodi)primjer: Pascal, C, C++ ...
JEZIK I PROGRAMIRANJE
Da bi upoznali neki jezik za programiranje potrebno je upoznati:1. leksičku strukturu jezika (leksik)2. sintaksu jezika3. semantiku jezika
Leksička struktura (leksik)- je dopušten skup znakova- leksičku strukturu nekog jezika čine alfabet (je skup svih znakova koje koristimo kod pisanja programa – slova, brojevi, ostali simboli) i rječnik (skup riječi definiranih na temelju alfabeta, a riječ je niz znakova koji čine nedjeljivu cjelinu). Kod programiranja riječi su svrstane u grupe koje se nazivaju klaseSintaksa- pravila pisanja programa (naredbi)- pravila koja određuju pripada li niz simbola jeziku ili ne- proučava poredak, razmještaj riječi- opisuje pravilnu izgradnju jezičnih konstrukcijaSemantika- je značenje ispravno napisanih naredbi (pručava pojedine riječi)- je učinak izvršenja naredbe- bavi se značenjem ispravnih jezičnih konstrukcija
POSTUPAK PROGRAMIRANJA (ETAPE)
1. ZADAVANJE PROBLEMA- moramo znati što trebamo raditi- moramo znati ulazne podatke- moramo znati što želimo dobiti kao izlaz (rješenje)
2. SKICIRANJE RJEŠENJA (ANALIZA ZADATKA)1. potrebno je izraditi grubu skicu rješenja2. poželjno složeni problem rastaviti na manje, jednostavnije dijelove
3. SASTAVLJANJE ALGORITMAAlgoritam možemo prikazati:
- grafičkim simbolima (dijagram)- govornim jezikom (pseudo-kodom)
4. KODIRANJE (PISANJE PROGRAMA)je zapravo zapisivanje algoritma u nekom programskom jeziku
5. PREVOĐENJE PROGRAMA (ponoviti prevodioce)kod prevođenja (ako postoje) javljaju se greške, pa ih je potrebno ispraviti i ponoviti postupak prevođenja
6. TESTIRANJE PROGRAMA- radi dobivanja ispravnog rezultata- tu možemo otkriti logičke greške koje nastaju najčešće radi krivog algoritma - postupak: odabiremo ulazne vrijednosti za koje unaprijed znamo izlazne vrijednosti
7. IZRADA DOKUMENTACIJE I ODRŽAVANJE PROGRAMAbitno za profesionalne programe
HIJERARHIJSKA STRUKTURA PROGRAMA
PODACI
- su znakovi kao što su slova, brojevi i ostali simboli
OPĆA PODJELA PODATAKA:1. varijable (promjenjive vrijednosti)2. konstante (stalne, određene vrijednosti)
Varijabla je najčešće određena svojim imenom i tipom podatka.Konstanta je najčešće određena svojim imenom i vrijednošću, a mogu biti cjelobrojne, realne i znakovne.
Ime podatka (identifikator)- je riječ koja se tvori prema pravilima leksičke strukture jezika- je znak ili niz znakova između kojih nema razmaka- obavezno započinje slovom (poželjno koristiti slova engleske abecede), iza kojeg može slijediti ako želimo niz slova, brojeva- dodjeljujemo mi sami, po vlastitoj želji
Primjer: C, A1, PERO, V2C1, PERO2, PERO_33 ...
PROGRAM
NAREDBA
IZRAZ
PODACI OPERACIJE,OPERATORI
FUNKCIJE
Tip podatka- je skup vrijednosti koje imaju neka zajednička svojstva (najčešće svojstvo su operacije koje se mogu nad njima izvesti)- razlikuju se u pojednim vrstama od jezika do jezika
NAJČEŠĆA OPĆA PODJELA TIPOVA PODATAKA:(kod C++ postoji detaljnija podjela, a to ćemo upoznati kasnije)
1. JEDNOSTAVNI (STANDARDNI, PRIMARNI)a) numerički – cjelobrojni (samo cijeli brojevi)
- realni (s decimalnom točkom) b) znakovni (1 znak) c) logički (istina, laž)
2. SLOŽENI- skup- niz znakova (string)- polje- strukture- unije- datoteka- ...
OPERACIJE I OPERATORI
- operatori određuju operaciju
ARITMETIČKE:zbrajanje +oduzimanje -množenje *
dijeljenje /(još možemo koristiti potenciranje, cjelobrojno dijeljenje i ostatak cj. dijeljenja)
LOGIČKE:negacija NE (NOT)konjunkcija I (AND)
disjunkcija ILI (OR)
RELACIJSKI OPERATORI := jednako < manje > veće <= manje ili jednako>= veće ili jednako<> različito
BLOK-DIJAGRAM(GRAFIČKI PRIKAZ PROGRAMA)
Blok-dijagram je grafički način prikaza odvijanja programa uz pomoć grafičkih simbola.
Grafički simboli:
UVJET
SIMBOL ZA POČETAK I KRAJ
SIMBOL ZA OBRADU
SIMBOL ZA UNOS I ISPIS
LAŽ ISTINA
SIMBOL ZA ODLUKU (GRANANJE)
SMJER ODVIJANJA PROGRAMA
PRIKLJUČNA TOČKA
Najčešći izgled programa:
1. POČETAK PROGRAMA
2. NAREDBE UNOSA PODATAKA (ULAZ)
3. NAREDBE OBRADE I (ILI) ODLUKE
4. NAREDBE ISPISA (IZLAZA)
5. KRAJ PROGRAMA
Za detaljno razumijevanje programa moramo proučiti svaku naredbu i vrijednost podataka (konstanti i varijabli)!Vidimo, da se naredbe pišu jedna ispod druge (bolja preglednost i lakše snalaženje u programu).
1. Početak programa- definiramo ili ime programa ili komentar ili biblioteke...
2. Unos (ulaz) podataka- omogućuje unos podataka i njihov smještaj u memoriju (napišemo naredbu unosa i ime varijable u koju smještamo vrijednost koju unašamo)
3. Obrada - tu najčešće upisujemo aritmetičke i logičke operacije nad ulaznim podacima (zbrajanje, oduzimanje...)
Odluka- ovisno o vrijednosti uvjeta (izraza) omogućuje grananje programa (odvija se samo jedna grana programa)
4. Ispis (izlaz)- omogućuje ispis rezultata obrade i drugih podataka (najčešće napišemo naredbu ispisa i ime varijable u koju smo smjestili rezultat)
5. Kraj programa- svaki program završava s naredbom za kraj programa
ALGORITAM I ALGORITAMSKE TVOREVINE
Algoritam je skup pravila za rješavanje određenog problema, a sastoji se od opisa skupa koraka.Algoritam moramo sastaviti detaljno i jasno, korak po korak. Algoritam se sastoji od koraka koje moramo izvesti nad početnim podacima da bi na kraju algoritma dobili željeni rezultat. Svaki korak možemo smatrali naredbom u našem programu.
Postoje 3 algoritamske tvorevine:1. slijed (sekvenca)2. grananje (selekcija)3. ponavljanje (iteracija)
1. SLIJED (SEKVENCA)- tu naredbe slijede jedna iza druge (program se odvija od prve do zadnje naredbe)
POČETAK
UNOS
OBRADA
ISPIS
KRAJ PPROGRAMA
Primjer 1: Unesi jedan broj i ispiši ga!
Primjer 2: Izračunaj i ispiši opseg kruga ako je radijus 5!
POČETAK
UNOS a
ISPIS a
KRAJ PPROGRAMA
POČETAK
O=2*r*PI
ISPIS O
KRAJ PPROGRAMA
r=5PI=3.14
2. GRANANJE (SELEKCIJA)- ovisno o istinitosti izraza, izvesti će se samo jedna grana programa (samo jedna obrada u donjem slučaju)
IZRAZ
ISTINA LAŽ
OBRADA1 OBRADA2
POČETAK
UNOS
ISPIS
KRAJ PPROGRAMA
Primjer 1: Unesi dva broja. Ako je prvi broj veći od drugog izračunaj i ispiši razliku, a ako nije izračunaj i ispiši sumu.
a > b
ISTINA LAŽ
r = a - b s = a + b
POČETAK
UNOS a,b
ISPIS r
KRAJ PPROGRAMA
ISPIS s
3. PONAVLJANJE (ITERACIJA)- kod programiranja može se pojaviti potreba za višestrukim ponavljanjem dijelova programa. Znači potrebno je određeni niz naredbi izvršiti zadani broj puta. Za to se koriste naredbe ponavljanja – programske petlje (ponavljanje ili iteracija znači obavljanje iste stvari ponovo i ponovo, a osnovno sredstvo za ponavljanje (iteraciju) je petlja).Petlja je zapravo skup:
b) naredbi koje se ponavljajuc) i naredbi koje definiraju to ponavljanje
POČETAK
UNOS
OBRADA
ISPIS
KRAJ PPROGRAMA
IZRAZ
ISTINA
LAŽ
Primjer 1: Unesi jedan broj i 30 puta ga ispiši!
POČETAK
UNOS a
ISPIS a
KRAJ PPROGRAMA
Ispis = 30
ISTINA
LAŽ
JEDNOSTAVNE (OSNOVNE) NAREDBE
Komentar – REMTa se naredba ne izvršava, već služi samo za interno opisivanje.Komentare koristimo da bi se lakše snašli u našem programu, da opišemo ono što se dešava u programu ili pojedinim dijelovima programa.Može se napisati u bilo kojem dijelu programa.
Brisanje sadržaja prozora rezultata – CLS (CLEARSCREEN)Naredba koja omogućuje brisanje (čišćenje) ekrana (prozora) na kojem vidimo rezultate našeg programa nakon startanja na izvođenje.
Kraj ili prekid programa – ENDNaredba koja omogućuje normalan završetak programa ili prekid programa (ako se napiše unutar programa).
Ispis - PRINTNaređuje računalu ispis podataka (vrijednosti) koje nalaze iza te ključne riječi.Primjer: PRINT 7
PRINT 10+4 PRINT 2+4-1*1
(može se koristiti i znak ;) PRINT 3;2;1 (ako želimo pisati u istom redu) PRINT (za prazan red – red razmaka)
Za tekst: PRINT ''ZDRAVO'' (koristimo navodnike za tekst koji želimo vidjeti
Ispisan na ekranu – znakovna konstanta) PRINT ''1*1''
Zadatak:1. Izradi program koji ispisuje pozdrav!
REM moj prvi programCLSPRINT ''DOBAR DAN''END
2. Izradi program koji ispisuje tvoje ime!3. Izradi program koji ispisuje tvoje ime i prezime, zatim slijedi red razmaka i ispis tvoje adrese stanovanja!
Unos – INPUTNaredba koja nam služi za unos podataka.Tu mi zapravo smještamo vrijednost podatka u varijablu kojoj sami određujemo ime prema vlastitoj želji.Primjer:
INPUT aili za više podataka:
INPUT A, B, C (voditi računa da kad unašamo vrijednosti koristimo zarez iza svake vrijednosti koje unesemo u tom redu!)
Isto tako da bi znali što želimo unjeti, možemo iza ključne riječi INPUT napisati u znakovnoj konstanti što se želi unjeti, i iza toga ime varijable ili varijabli u koje smještamo vrijednosti podataka.
INPUT ''UNESI BROJ: '', A
Zadatak:1. Unesi neki broj i zatim ga ispiši!
REM unos i ispisCLSINPUT APRINT AEND
2. U prethodni program ubaci poruke kod unosa i ispisa!
REM ljepši unos i ispisCLSINPUT ''UNESI NEKI BROJ: '', APRINT ''UNESEN JE BROJ ''; AEND
3. Unesi tri broja i ispiši vrijednost srednjeg broja!
REM unos i ispisCLSINPUT ''UNESI TRI BROJA: '', A, B, CPRINT ''SREDNJI BROJ JE: ''; BEND
NAREDBA DODIJELJIVANJA
Varijabli možemo pridružiti vrijednost na dva načina:1. izvan programa
naredbom za unosINPUT ime varijableprimjer: INPUT A
2. unutar programanaredbom za dodijeljivanje (pridruživanje)[=]
ime varijable = vrijednost (izraz)primjer: A=5
A=B+CPrvi primjer čita se: vrijednost 5 smjestili smo (dodijelili) u
varijablu pod imenom A.Drugi primjer: prvo izračunamo vrijednost izraza na desnoj
strani, a zatim dobiveni rezultat smjestimo u varijablu na lijevoj strani znaka =.
Varijable koristimo za spremanje vrijednosti podataka. Računalo pamti samo zadnji sadržaj varijable. Vrijednost varijable može se mjenjati.Primjer: A=5
B=3 A=B PRINT A (rezultat je 3)
Primjer:Izradi program, gdje varijabli pod imenom PERO dodijeljujemo vrijednost 6, a varijabli pod imenom MIRKO dodijeljujemo vrijednost 8. Potrebno je izračunati sumu vrijednosti varijabli i rezultat smjestiti u novu varijablu pod imenom SUMA. Ispiši dobiveni rezultat.
REM prvi primjerCLSPERO=6MIRKO=8SUMA=PERO+MIRKOPRINT ''SUMA JE: '';SUMAEND
ARITMETIČKE OPERACIJE
Osnovne računske operacije:zbrajanje +
oduzimanje - množenje * dijeljenje /
Cjelobrojno dijeljenje i ostatak:1. cjelobrojno dijeljenje (\) (ALT 92 ili ALT GR i slovo Q)
primjer: A\B 7\2 = 3 11\4= 2
2. ostatak (MOD)primjer: A MOD B 7 MOD 2 = 1
11 MOD 4 = 3
VJEŽBA:
1. Varijabla C1 ima vrijednost 9. Potrebno je toj varijabli dodati još 2 i ispisati novu vrijednost te varijable.
REM izračunavanje vrijednosti varijableCLSC1=9C1=C1+2PRINT ''NOVA VRIJEDNOST JE: '', C1END