PROGRAMIRANJE ZA POČETNIKE
Qbasic
Sretno sa programiranjem...
Primjer 1:
Tradicionalni program svih programera početnika je vrlo
jednostavan. Naime radi se o tome da na monitoru ispiše jedna poruka «Hello
world»(ili nešto na tu temu). Ali na ovom primjeru se vrlo dobro može naučiti
kako se iz programa komunicira sa izlaznim uređajima. U našem slučaju radi se o
monitoru. Program se neće naknadno pojašnjavati jer jer je uredno
izkomentarisan. (Komentari u programu su linije koje se ne izvršavaju, nisu
instrukcije, već služe za pojašnjenje programa.).
RJEŠENJE:
5 CLS
10 REM Prvi program
20 PRINT „ Moj prvi program u Qbasic-u“
30 PRINT
„************************“
40 END
EKRAN:
Moj prvi program u Qbasic-u
************************
Primjer 2:
Program pozdravlja učenika i pita za njegovo ime,a na kraju se zahvaljuje što su se upoznali.
RJEŠENJE:
5 CLS
10 REM Upoznavanje
15 PRINT „Moj drugi
program“
20 PRINT „Zdravo,kako
se zoveš ?“
25 INPUT B$
30 PRINT „Hvala.tvoje
ime je „;B$
40 END
EKRAN:
Moj drugi program
Zdravo,kako se zoveš ?
DELILA
Hvala,tvoje ime je DELILA
Primjer 3:
Program traži unos dva broja a zatim izvrši osnovne matematičke radnje i ispiše rezultate na ekranu.
RJEŠENJE:
5 CLS
10 PRINT „Program
OSNOVNE matematske operacije “
20 PRINT „Unesi prvi
broj a = „
30 INPUT A
40 PRINT „Upiši drugi
broj b = „
50 INPUT B
55 C=A+B
60 D=A-B
65 E=A*B
70 F=A/B
75 PRINT „Zbir je :
„;C
80 PRINT „Razlika je
: „;D
85 PRINT „Proizvod je : „;E
90 PRINT „Količnik je
: „;F
95 END
EKRAN:
Program OSNOVNE matematske operacije
Unesi prvi broj a = 6
Upiši drugi broj b = 2
Zbir je : 8
Razlika je : 4
Proizvod je : 12
Količnik je : 3
Primjer 4:
Program koji računa drugi korijen,kvadrat i kub upisanog broja.
RJEŠENJE:
5 CLS
10 PRINT "Upiši
broj"
20 INPUT A
30 B = SQR(A)
35 C = A ^ 2
40 D = A ^ 3
50 PRINT "Dugi
korijen je :"; B
55 PRINT "Kvadrat
je :"; C
60 PRINT "Kub ovog
broja je :"; D
70 END
EKRAN:
Upiši broj
9
Drugi korijen je :3
Kvadrat je : 81
Kub ovog broja je : 729
Primjer 5:
Napisati program za izračunavanje površine-oplošja i obima-obujma pravougaonika-pravokutnika ako
su poznate stranic „a“ i „b“.
RJEŠENJE:
5 CLS
10 PRINT „Program
pravougaonik-pravokutnik“
20 PRINT „Upiši
stranice a = , i b = „
30 INPUT A,B
40 P=A*B
50 O=2*(A+B)
60 PRINT
„Površina-oplošje je P = „;P
70 PRINT „Obim-obujam
je O = „;O
80 END
EKRAN:
Program pravougaonik-pravokutnik
Upiši stranice a = , i b =
5
3
Površina-oplošje je P = 15
Obim-obujam je O = 16
Primjer 6:
Program za izračunavanje površine-oplošja i obima-obujma kruga-kružnice.
RJEŠENJE:
5 CLS
10 PRINT „Program
kružnica-krug“
20 PRINT „Upiši
poluprečnik r = „
30 INPUT R
40 O=2*R*(22/7)
50 P=R*R*(22/7)
60 PRINT „Obim-obujam
je O = „;O
70 PRINT „Površina-oplošje je P = ;P
80 END
Primjer 7:
Napisati program za izračunavanje površine-oplošja i
obujma-obima kvadrata ako je poznata dijagonala kvadrata „d“.
RJEŠENJE:
5 CLS
10 PRINT „Program
kvadrat ako je poznata dijagonala“
20 PRINT „Upiši
dijagonalu kvadrata d = „
30 INPUT D
50 A=(D/2)*SQR(2)
60 O=4*A
70 P=A*A
75 PRINT „Stranica
kvadrata je a = „;A
80 PRINT „Obujam-obim
je O = „;O
85 PRINT
„Oplošje-površina je P = „;P
90 END
Primjer 8:
Program koji računa Površinu-oplošje i Obim-obujam
valjka-cilindra ako je poznat poluprečnik baze „r“i visina „h“.
RJEŠENJE:
5 CLS
10 REM Program
valjak-cilindar
15 PRINT „Upiši
poluprečnik baze i visinu cilindra-valjka:“
20 INPUT R,H
25 B=R*R*(22/7)
30 V = B*H
35 M = 2*R*(22/7)*H
40 P = M+(2*B)
45 PRINT „Zapremina-volumen
je V = „;V
50 PRINT „Površina-oplošje
je
P = „;P
60 END
Primjer 9:
Napisati program koji izračunava Površinu i Obim trougla ako su poznate stranice. Program ispisuje na ekranu da upisani parametri ne obrazuju trougao ako nije ispunjen uslov a<b+c , b<a+c i c<a+b.
(Za rješenje ovog zadatka trebamo poznavati tzv.HERON-ov obrazac za površinu trougla).
RJEŠENJE:
5 CLS
10 PRINT „Program
trougao“
15 PRINT „Unesi
stranicu trougla a = „
20 INPUT A
25 PRINT „Unesi
stranicu b = „
30 INPUT B
35 PRINT „Upiši
stranicu c = „
40 INPUT C
45 IF A<B+C OR B<A+C OR C<A+B
GOTO 55 ELSE PRINT“Ovi parametri
ne obrazuju trougao .“
50 GOTO 90
55 O=A+B+C
60 S=O/2
605P=SQR(S*(S-A)*(S-B)*(S-C))
70 PRINT „Obim
je O = „;O
80 PRINT
„Površina je P = „;P
90 END
Primjer 10:
Koristeći prethodni primjer napisati program koji računa Poluprečnik upisane kružnice Ru = , i Poluprečnik opisane kružnice Ro = trougla ako su poznate stranice a,b i c.Program ispisuje na ekranu da upisani parametri ne obrazuju trougao ako nije ispunjen uslov a<b+c , b<a+c i c<a+b.
RJEŠENJE:
5 CLS
10 PRINT „Program poluprečnici
upisane Ru i opisane Ro kružnice trougla“
15 PRINT „Unesi
stranicu trougla „
20 INPUT A,B,C
25 IF A<B+C OR B<A+C OR C<A+B GOTO 35 ELSE PRINT“Ovi
parametri ne obrazuju trougao .“
30 GOTO 90
35 S=(A+B+C)/2
40 P=SQR(S*(S-A)*(S-B)*(S-C))
50 R1=P/S
60 R2=(A*B*C)/(4*P)
70 PRINT „Poluprečnik
upisane kružnice Ru = „;R1
80 PRINT „Poluprečnik
opisane kružnice Ro= „;R2
90 END
Primjer 11:
Napisati program za izračunavanje Površine i Zapremine
pravilne četverostrane piramide ,ako je poznata visina piramide „H“ i stranica baze „a“.
RJEŠENJE:
10 CLS
20 REM Pravilna četverostrana piramida
30 PRINT "Upiši
stranicu baze piramide a = "
40 INPUT A
45 PRINT "Unesi
visinu H = "
50 INPUT H
55 B = A ^ 2
60 V = B * H / 3
65 H1 = SQR((H ^ 2) +
((A / 2) ^ 2))
70 M = 2 * A * H1
75 P = B + M
80 PRINT "Volumen
piramide je V = "; V
85 PRINT "Površina
je P = "; P
90 END
Primjer 12:
Napisati program za poređenje dva broja.
RJEŠENJE:
10 CLS
20 REM Poređenje dva
broja
30 PRINT "Upiši dva
broja"
40 INPUT A, B
50 IF A = B THEN PRINT
"Ovi brojevi su jednaki :";A,“=“;B
60 IF A > B THEN PRINT "Prvi broj je
VEĆI od drugog :";A,“>“;B
70 IF A < B THEN
PRINT "Prvi broj je MANJI od drugog
:";A,“<“;B
80 END
Primjer 12b:
5 CLS
10 PRINT „Upiši dva
broja :“
20 INPUT A,B
30 IF A>B THEN
GOTO 50 ELSE PRINT A;“ je mani od :“;B
40 STOP
50 PRINT A;“ je veći
od „;B
60 END
Primjer 12c:
5 CLS
10 PRINT „Upiši dva
broja :“
20 INPUT A,B
30 IF A>B THEN
PRINT A;“ je veći od „;B ELSE PRINT A;“ je manji od „;B
40 END
Primjer 13:
Napisati program za izračunavanje rješenja jednačine
oblika 2ax – 4b = 3c.Program treba da ispiše na ekranu da nema rješenja
ako je parametar a = 0.
RJEŠENJE:
10 CLS
20 REM Jednačina oblika
2ax-4b=3c
30 PRINT "Upiši
paremetre jednačine a =,b = i c = "
40 INPUT A, B, C
50 IF A <> O GOTO
60 ELSE GOTO 90
60 X = ((3 * C) + (4 *
B)) / (2 * A)
70 PRINT "Rješenje
je X = "; X
80 GOTO 90
90 PRINT "Jednačina
nema rješenja jer je a = 0"
100 END
Primjer 14:
Željeznička kompanija naplaćuje
karte na sljedeći način:
a) Djeca (ispod 16 godina) – besplatno
b) Odrasli (16 godina i stariji) – puna cijena
c) Penzioneri (60 godina i stariji) – pola cijene
Napisati program koji na ulazu prihvata godine starosti putnika, a na
izlazu daje informaiju u koju kategoriju putnik pripada.
RJEŠENJE:
5 CLS
10 REM Naplata putničkih
karata
20 PRINT "Unesi
godine putnika :"
30 INPUT G
40 IF G < 16 THEN
PRINT "Ovaj putnik putuje besplatno"
50 IF G >= 60 THEN
PRINT "Ovaj putnik plaća pola iznosa cijene karte "
60 IF G >= 16 AND G
< 60 THEN PRINT " Ovaj putnik plaća puni iznos cijene karte:"
70 END
Primjer 15:
Program koji komentariše ocjene uspjeha učenika.
RJEŠENJE:
5 CLS
10 REM Analiza i
komentar uspjeha učenika
20 PRINT
"Program Analiza uspjeha"
30 PRINT "Upiši
svoju ocjenu "
40 INPUT U
50 IF U > 5 THEN
PRINT "Unijeli ste ocjenu koja ne postoji, velika je."
55 IF U = 5 THEN PRINT
"Vi ste fantastični odličan (5)."
60 IF U = 4 THEN PRINT
" Vrlo dobro,još malo pa odličan."
65 IF U = 3 THEN PRINT
"Veoma prosječno."
70 IF U = 2 THEN PRINT "Nije tako loše
,zadovoljava."
75 IF U < 2 THEN
PRINT "Žao mije,više sreće idući put."
90 END
Primjer 16:
Program računa rješenja kvadratne jednačine oblika ax2+bx +c = 0,te ispiše da jednačina nema rješenja ako uslovi nisu zadovoljeni.
RJEŠENJE:
5 CLS
10 PRINT "Program
Kvadratna jednačina oblika a*x*x+b*x+c=0"
20 PRINT "Upiši
parametre a =, b = i c ="
30 INPUT A, B, C
40 D = (B * B) - (4 * A
* C)
45 IF D >= 0 GOTO 50
ELSE GOTO 120
50 PRINT "Za ove
parametre jednačina ima rješenja:"
60 X1 = ((-B) + SQR(D))
/ (2 * A)
65 X2 = ((-B) - SQR(D))
/ (2 * A)
80 IF D > 0 GOTO 90
ELSE GOTO 110
90 PRINT
"Rješenje X1 = "; X1
100 PRINT
"Rješenje X2 = "; X2
110 IF D = 0 THEN PRINT
"Rješenja su identična X1 = X2 = "; X1
115 GOTO 130
120 PRINT "Za ove
parametre jednačina nema rješenja."
130 END
Primjer 17:
Program koji ispisuje na ekranu tablicu množenja sa 8.(Primjer pisanja petlje „FOR NEXT“).
RJEŠENJE:
5 CLS
10 REM Program za ispisivanje tablice množenja
sa 8
15 REM Početak petlje
20 FOR I = 1 TO 10 STEP 1
30 BROJ = I * 8
40 PRINT I; " * 8 = "; BROJ
50 NEXT I
60 REM Kraj petlje
70 END
Primjer 18:
Program koji ispisuje tablicu množennja od 5 do 7.(Primjer dvostruke petlje).
RJEŠENJE:
5 CLS
10 PRINT "Program
koji ispisuje tablicu množenja od 5 do 6 :"
15 REM VANJSKA petlja
20 FOR I = 5 TO 7
30 REM UNUTRAŠNJA
petlja
40 FOR J = 1 TO 10
50 B = I * J
60 PRINT I; " *
"; J; " = "; B
70 NEXT J
80 REM Kraj UNUTRAŠNJE
petlje
90 NEXT I
100 REM Kraj VANJSKE
petlje
110 END
Primjer 19:
Program za uništavanje neprijatelja koji se nalazi na poziciji određenoj koordinatama A i B.Broj pokušaja je najviše 5.
RJEŠENJE:
5 CLS
10 PRINT „Program
gađanje neprijatelja“
15 C = 0
20 A = INT(RND(1) * 20)
+ 1
30 B = INT(RND(1) * 20)
+ 1
40 PRINT "POLOŽAJ
neprijatelja: "; A; B, " GAĐAJ-vatra"
50 INPUT X
60 C = C + 1
70 IF X = A * B THEN
PRINT "Neprijatelj UNIŠTEN: "
ELSE PRINT " Cilj promašen"
80 IF C < 6 GOTO 20
90 END
Primjer 20:
Program koji izračunava Obim kvadrata i pravougaonika pozivom na funkciju koju smo definisali.(Npr.opća funkcija za računanje Obima četverougla je :150 DEF FNOBIM(A,B)=2*A+2*B).
RJEŠENJE:
5 CLS
10 REM Obim
pravougaonika i kvadrata pozivom FUNKCIJE
20 PRINT "Upiši
stranice pravougaonika "
30 INPUT X, Y
35 PRINT "Unesi
stranicu kvadrata "
40 INPUT A
45 DEF FNOBIM (X, Y) = 2
* X + 2 * Y
50 OP = FNOBIM(X, Y)
60 OK = FNOBIM(A, A)
70 PRINT "Obim
pravougaonika je :"; OP; " Obim kvadrata je :"; OK
80 END