Programiranje Liberty Basic Zbirka Zadataka.2

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 32

Rjeeni zadaci iz Informatike II (principi programiranja)

1.

Napisati program kojim se formira matrica MxN elemenata. Vrijednost elemenata matrice u neparnim redovima poredane red po red cine niz uzastopnih neparnih brojeva poev od broja 1. Vrijednost elemenata matrice u parnim redovima poredane red po red cine niz uzastopnih parnih brojeva od broja 2. Za ucitane vrijednosti M i N ispisati matricu red po red u izlaznu datoteku. Ispis prilagoditi sljedecem obliku: Matrica A (4x5): 1.00 3.00 5.00 7.00 9.00 2.00 4.00 6.00 8.00 10.00 11.00 13.00 15.00 17.00 19.00 12.00 14.00 16.00 18.00 20.00 RJEENJE: dim A (50,50) open "D:\ispit\matrica.txt" for append as #1 input "unesite broj redova matrice";M input "unesite broj kolona matrice";N nepar=1 par=2 for i=1 to M if i mod 2=1 then for j=1 to N A(i,j)=nepar nepar=nepar+2 next else for j=1 to N A(i,j)=par par=par+2 next end if next print #1, "matrica A (";M;"x";N;"):" for i=1 to M for j=1 to N print #1, using("####.##",A(i,j)); next print #1, "" next close #1

Isti zadatak ali rijeen na malo drugaiji nain: dim A (50,50) open "D:\ispit\matrica.txt" for append as #1 input "unesite broj redova matrice";M input "unesite broj kolona matrice";N for i=1 to N for j=1 to M input "Unesite elemente matrice A (";i;",";j;")";A(i,j) next next print nepar=1 par=2 for i=1 to M if i mod 2=1 then for j=1 to N A(i,j)=nepar nepar=nepar+2 next else for j=1 to N A(i,j)=par par=par+2 next end if next print #1, "matrica A (";M;"x";N;"):" for i=1 to M for j=1 to N print #1, using("####.##",A(i,j)); next print #1, "" next close #1

2. Dat je cijeli broj N i dvije kvadratne matrice A(NxN) i B(NxN). Napisati program kojim ce se formirati matrica : C=AT-B (AT- transponovana matrica matrice A). Program testirati i rezultate ispisati na ekran usljedecem obliku: Matrice A(2x2) ima oblik 9.00 8.00 7.00 6.00 Matrice B(2x2) ima oblik 5.00 4.00 3.00 2.00 Matrica A transponovana(2x2): 9.00 7.00 8.00 6.00 Nova matrica nakon sto se transponovana oduzme od matrice B 4.00 3.00 5.00 4.00 Rjeenje: (bez upisa u datoteku) input "Unesi dimenziju matrice A: ";N for i=1 to N for j=1 to N input "Unesite elemente matrice A(";i;",";j;"):";A(i,j) next j next i print print "Matrice A(";N;"x";N;") ima oblik" (ispis na ekran) for i=1 to N for j=1 to N print using("####.##",A(i,j)); next j print next i input "Unesi dimenziju matrice B: ";N for i=1 to N for j=1 to N input "Unesite elemente matrice B(";i;",";j;"):";B(i,j) next j next i print print "Matrice B(";N;"x";N;") ima oblik" (ispis na ekran) for i=1 to N for j=1 to N print using("####.##",B(i,j)); next j print next i for i=1 to N for j=1 to N Atr(j,i)=A(i,j) next j next i print ' Ispis matrice Atr u obliku red po red

print "Matrica A transponovana(";N;"x";N;"): " for i=1 to N for j=1 to N print using("####.##",Atr(i,j)); next j print next i print for i=1 to N for j=1 to N C(i,j)=Atr(i,j)-B(i,j) next j next i print

(ispis na ekran)

print"Nova matrica nakon sto se trnsponovana oduzme od matrice b" for i=1 to N for j=1 to N print using("####.##",C(i,j)); next j print next i end

(ispis na ekran)

Rjeenje: (sa upisom u datoteku) dim A(20,20),B(20,20),C(20,20) open "D:\ispit\matrica.txt" for append as #1 (Upis u datoteku sa opcijom upisa append) input "Unesi dimenziju matrice A: ";N for i=1 to N for j=1 to N input "Unesite elemente matrice A(";i;",";j;"):";A(i,j) next j next i print print #1,"Matrice A(";N;"x";N;") ima oblik" (upis u datoteku9 for i=1 to N for j=1 to N print #1,using("####.##",A(i,j)); next print #1, "" next input "Unesi dimenziju matrice B: ";N for i=1 to N for j=1 to N input "Unesite elemente matrice B(";i;",";j;"):";B(i,j) next j next i print print #1, "Matrice B(";N;"x";N;") ima oblik" for i=1 to N for j=1 to N print #1, using("####.##",B(i,j)); next print #1, "" next

(upis u datoteku)

for i=1 to N for j=1 to N Atr(j,i)=A(i,j) next j next i print

' Kreiranje transponovane matrice

' Ispis matrice Atr u obliku red po red print #1,"Matrica A transponovana(";N;"x";N;"): " for i=1 to N for j=1 to N print #1, using("####.##",Atr(i,j)); next print #1, "" next print for i=1 to N for j=1 to N C(i,j)=Atr(i,j)-B(i,j) next j next i print

(upis u datoteku)

' Kreiranje nove matrice

print #1,"Nova matrica nakon sto se transponovana oduzme od matrice B" for i=1 to N for j=1 to N print #1,using("####.##",C(i,j)); next print #1, "" next close #1

3. Napisati program koji uitava red kvadratne matrice A,kao i elemente te matrice. a) Na osnovu matrice A formirati matricu B rotacijom elemenata matrice A oko sporedne dijagonale. b) Za svaki red matrice B odrediti srednju vrijednost tog reda. c) U datoteku tampati matricu B i srednje vrijednosti elemenata svakog reda na kraju odgovarajuceg reda matrice B. d) Ispis prilagoditi sljedecem: Matrice A(3x3) ima oblik 1.00 2.00 3.00 4.00 5.00 6.00 7.00 8.00 9.00 Matrica B(3x3)nakon rotacije oko sporedne ose: 9.00 6.00 3.00 8.00 5.00 2.00 7.00 4.00 1.00 Matrica B i srednja vrijednost svakoga reda: 9.00 6.00 3.00 6.00 8.00 5.00 2.00 5.00 7.00 4.00 1.00 4.00 Rjeenje: dim A(20,20),B(20,20),C(20) open "D:\ispit\matrica.txt" for append as #1 input "Unesi dimenziju matrice A: ";N for i=1 to N for j=1 to N input "Unesite elemente matrice A(";i;",";j;"):";A(i,j) next j next i print print #1,"Matrice A(";N;"x";N;") ima oblik" for i=1 to N for j=1 to N print #1,using("####.##",A(i,j)); next print #1, "" next for i=1 to N for j=1 to N B(N+1-j,N+1-i)=A(i,j) next j next i print #1, "Matrica B(";N;"x";N;")nakon rotacije oko sporedne ose: " for i=1 to N for j=1 to N print #1, using("####.##",B(i,j)); next j print #1, "" next i

for i=1 to N S=0

for j=1 to N S=S+B(i,j) next j Sr=S/N C(i)=Sr next i print #1, "Matrica B i srednja vrijednost svakoga reda: " for i=1 to N for j=1 to N print #1, using("####.##",B(i,j)); next j print #1, using("####.##",C(i)) next i close #1 4. Napisati program koji od kvadratne matrice A(NxN),napravi novu matricu B sa zamjenom prvog i zadnjeg reda matrice A. A zatim izvojiti clanove matrice A drugog i treceg reda,zatim sabrati te redove i izvrsiti sortiranje tog reda. A potom od nove matrice B uraditi isto tako. I na kraju izvrsiti transponovanje obje matrice. Prijmjer rjesenja ispisati na ekranu sa zeljenom matricom.Jedno od rjesenja bi izgledalo ovako: Unesite broj redova i kolona= 3 Unesite elemente matrice A(1,1)9 Unesite elemente matrice A(1,2)5 Unesite elemente matrice A(1,3)1 Unesite elemente matrice A(2,1)4 Unesite elemente matrice A(2,2)7 Unesite elemente matrice A(2,3)3 Unesite elemente matrice A(3,1)6 Unesite elemente matrice A(3,2)8 Unesite elemente matrice A(3,3)2 Unesena matrica A izgleda A(3,3) 9.0 5.0 1.0 4.0 7.0 3.0 6.0 8.0 2.0 Nova matrica B izgleda nakon zamjene prvog i zadnjeg reda 6.0 8.0 2.0 4.0 7.0 3.0 9.0 5.0 1.0 Clanovi drugog red matrice A su 4.0 7.0 3.0 Clanovi treceg reda matrice A su: 6.0 8.0 2.0 zbir drugog i treceg reda 10.0 15.0 5.0 Sortiran niz zbira redova 5.0 10.0 15.0 Drugi red matrice B 4.0 7.0 3.0 Treci red matrice B 9.0 5.0 1.0 Zbir drugog i treceg reda matrice B 13.0 12.0 4.0 Sortiran niz zbira redova 4.0 12.0 13.0

Matrica A transponovana(3x3): 9.00 4.00 6.00 5.00 7.00 8.00 1.00 3.00 2.00 Matrica B transponovana(3x3): 6.00 4.00 9.00 8.00 7.00 5.00 2.00 3.00 1.00 Rjeenje: 'Program za kvadratnu matricu Input "Unesite broj redova i kolona= ";N for i=1 to N for j=1 to N Input "Unesite elemente matrice A(";i;",";j;")";A(i,j) next j next i 'Ispis matrice na ekran print "Unesena matrica A izgleda A(";N;",";N;")" for i=1 to N for j=1 to N print using("####.#",A(i,j)); next j print next i 'Ispis nove matrice B na ekran print"Nova matrica B izgleda nakon zamjene prvog i zadnjeg reda" for i=1 to N for j=1 to N B(N+1-i,j)=A(i,j) next j next i print for i=1 to N for j=1 to N print using("####.#",B(i,j)); next j print next i 'Ispis drugog reda matrice A na ekran print "Clanovi drugog red matrice A su" i=2 for j=1 to N drugi(j)=A(i,j) print using("####.#",drugi(j)); next j print print "Clanovi treceg reda matrice A su: " i=3 for j=1 to N

treci(j)=A(i,j) print using("####.#",treci(j)); next j print ' Formiranje i ispis novog reda matrice print "zbir drugog i treceg reda" for j=1 to N zbir(j)=drugi(j)+treci(j) print using("####.#",zbir(j)); next j print ' Ispis sortiranog niza ZBIR u rastucem redoslijedu print "Sortiran niz zbira redova" sort zbir()1,N for i=1 to N print using("####.#",zbir(i)); next i print 'Ispis drugog reda matrice B na ekran print "Drugi red matrice B " i=2 for j=1 to N Drugi(j)=B(i,j) print using("####.#",Drugi(j)); next j print 'Ispis drugog reda matrice B na ekran print "Treci red matrice B " i=3 for j=1 to N Treci(j)=B(i,j) print using("####.#",Treci(j)); next j print ' Formiranje i ispis novog reda matrice B print "Zbir drugog i treceg reda matrice B" for j=1 to N Zbir(j)=Drugi(j)+Treci(j) print using("####.#",Zbir(j)); next j print ' Ispis sortiranog niza ZBIR u rastucem redoslijedu print "Sortiran niz zbira redova" sort Zbir()1,N for i=1 to N print using("####.#",Zbir(i)); next i print

' Transponovanje matrice A for i=1 to N for j=1 to N Atr(j,i)=A(i,j) next j next i print ' Ispis matrice Atr u obliku red po red print "Matrica A transponovana(";N;"x";N;"): " for i=1 to N for j=1 to N print using("####.##",Atr(i,j)); next j print next i print ' Transponovanje matrice B for i=1 to N for j=1 to N Atr(j,i)=B(i,j) next j next i print ' Ispis matrice Btr u obliku red po red print "Matrica B transponovana(";N;"x";N;"): " for i=1 to N for j=1 to N print using("####.##",Atr(i,j)); 'formatirani ispis next j print next i print

5. Napisati program koji ce od unesene matrice A(MxN) izdvojiti elemente sa glavne i sporedne dijagonale. Te iste smjestiti u odreenu datoteku. Jedno od rijesenja bi izgledalo: UNESENA MATRICA JE 9 8 7 6 5 4 3 2 1 ELEMENTI NA GLAVNOJ DIJAGONALI SU: 9 5 1 ELEMENTI NA SPOREDNOJ DIJAGONALI SU: 7 5 3 Rjeenje: 'unos matrice DIM A(10,10) Open "D:\ispit\matrica.txt" for append as #1 INPUT "UNESITE BROJ REDOVA MATRICE: ";M INPUT "UNESITE BROJ KOLONA: ";N FOR I=1 TO M FOR J=1 TO N INPUT "UNESITE ELEMENTE MATRICE A(";I;",";J;")";A(I,J) NEXT J NEXT I PRINT #1, "UNESENA MATRICA JE" FOR I=1 TO M FOR J=1 TO N PRINT #1,A(I,J);SPACE$(3); NEXT J PRINT #1, "" NEXT I PRINT PRINT #1,"ELEMENTI NA GLAVNOJ DIJAGONALI SU: " FOR I=1 TO M FOR J=1 TO N IF I=J THEN PRINT #1,A(I,J);SPACE$(3); ELSE END IF NEXT J NEXT I PRINT #1, "" PRINT #1,"ELEMENTI NA SPOREDNOJ DIJAGONALI SU: " FOR I=1 TO M FOR J=1 TO N IF I+J=N+1 THEN PRINT #1, A(I,J);SPACE$(3); ELSE END IF NEXT J NEXT I close #1 END

6. Napisati program kojim se za matricu A(NxN) izracunava: a) suma elemenata matrice b) suma dijagonalnih elemenata, tj. suma elemenata sa jednakim indeksima c) vrijednost najveceg elementa na sporednoj dijagonali d) suma elemenata ispod glavne dijagonale e) suma negativnih elemenata matrice. f) rezultate ispisati u datoteku Jedno od mogucih rjesenja nakon upisa u datoteku bi bilo: Matrica A je: 9.000 8.000 7.000 6.000 5.000 4.000 3.000 2.000 1.000 Suma elemenata matrice A iznosi: 45 Suma elemenata sa glavne dijagonale iznosi: 15 Suma elemenata sa sporedne dijagonale iznosi: 15 Vrijednost najveceg elementa na sporednoj dijagonali je: 7 Suma elemenata ispod glavne dijagonale je: 11 Suma negativnih elemenata matrice iznosi: 0 Rjeenje: DIM A(20,20) open "D:\ispit\matrica.txt" for append as #1 Input "Unesite dimenziju kvadratne matrice N: ";N 'unos matrice for i=1 to N for j=1 to N input "Unesite element matrice A(";i;",";j;"):";A(i,j) next j next i 'a) suma svih elemenata matrice for i=1 to N for j=1 to N SumaAll=SumaAll+A(i,j) 'suma clanova next j next i 'b) suma elemenata sa glavne dijagonale, i=j for i=1 to N SumaGD=SumaGD+A(i,i) next i 'b) suma elemenata sa sporedne dijagonale for i=1 to N SumaSp=SumaSp+A(i,N+1-i) next i

'c) odredjivanje najveceg elementa na sporednoj dijagonali MAX=A(1,N) for i=1 to N for j=1 to N if i+j=N+1 then if MAX<A(i,j) then MAX=A(i,j) end if end if next j next i 'd) suma elemenata ispod glavne dijagonale for i=1 to N for j=1 to N if i>j then SumaIGD=SumaIGD+A(i,j) end if next j next i 'e) suma negativnih elemenata matrice for i=1 to N for j=1 to N if A(i,j)<0 then SumaNeg=SumaNeg+A(i,j) end if next j next i 'ispis matrice u formi red po red print #1, "Matrica A je:" print for i=1 to N for j=1 to N print #1,using("###.###", A(i,j));space$(2); next j print #1, "" next i print 'ispis sume svih elemenata matrice A print #1, "Suma elemenata matrice A iznosi: ";SumaAll 'ispis sume elemenata sa glavne dijagonale print #1, "Suma elemenata sa glavne dijagonale iznosi: ";SumaGD 'ispis sume elemenata sa sporedne dijagonale print #1,"Suma elemenata sa sporedne dijagonale iznosi: ";SumaSp 'ispis najveceg elementa na sporednoj dijagonali print #1, "Vrijednost najveceg elementa na sporednoj dijagonali je: ";MAX 'ispis sume elemenata ispod glavne dijagonale print #1, "Suma elemenata ispod glavne dijagonale je: ";SumaIGD 'ispis sume negativnih elemenata matrice

print #1,"Suma negativnih elemenata matrice iznosi: ";SumaNeg close #1 end

7. Putem tastature unijeti dimenziju matrice A(MxM), a potom i njene clanove. Zatim, u posebne nizove B(K) i C(L) izdvojiti pozitivne i negativne elemente matrice. Na ekranu ispisati matricu A(MxM) i nizove B(K) i C(L). Jedno od mogucih rjesenja bi bilo: Unesite broj redova i kolona matrice A: 3 Unesite element matrice A(1,1): -2 Unesite element matrice A(1,2): 1 Unesite element matrice A(1,3): 3 Unesite element matrice A(2,1): -4 Unesite element matrice A(2,2): 5 Unesite element matrice A(2,3): 6 Unesite element matrice A(3,1): -7 Unesite element matrice A(3,2): -8 Unesite element matrice A(3,3): 0 Matrica A(3x3): -2.00 1.00 3.00 -4.00 5.00 6.00 -7.00 -8.00 0.00 Pozitivni elementi matrice: 1.00 3.00 5.00 6.00 Negativni elementi matrice: -2.00 -4.00 -7.00 -8.00 Ako elite ponoviti program pritisnite Enter. Rjeenje: [start] dim A(20,20),B(20),C(20) ' unos matrice A input "Unesite broj redova i kolona matrice A: ";M print for i=1 to M for j= 1 to M input "Unesite element matrice A(";i;",";j;"): ";A(i,j) next j next i print ' izdvajanje pozitivnih i negativnih elemenata matrice K=0 L=0 for i=1 to M for j=1 to M if A(i,j)>0 then K=K+1 B(K)=A(i,j) else

if A(i,j)<0 then L=L+1 C(L)=A(i,j) end if end if next j next i ' ispis matrice A(MxM) u obliku red po red print "Matrica A(";M;"x";M;"): " for i=1 to M for j=1 to M print using("####.##",A(i,j)); 'formatirani ispis next j print next i print ' ispis niza B print "Pozitivni elementi matrice: " for i=1 to K print using("####.##",B(i)); 'formatirani ispis next i print ' ispis niza C print "Negativni elementi matrice: " for i=1 to L print using("####.##",C(i)); 'formatirani ispis next i print print input "Ako elite ponoviti program pritisnite Enter."; Odg if Odg=0 then goto [start] end

8. Program koji odredjuje koliko je promjenljivih od pet zadatih.jednako nuli (primjena brojaa) Moguce rjesenje ispisano na ekran: Unesite prvu promjenljivu: 1 Unesite drugu promjenljivu: 0 Unesite trecu promjenljivu: 8 Unesite cetvrtu promjenljivu: 6 Unesite petu promjenljivu: 0 Od navedenih pet brojeva 2 broja su jednaka 0.

Rjeenje. ' BROJAI 'k=0 'if uslov then ' k=k+1 'end i ' Unos pet promjenljivih input "Unesite prvu promjenljivu: " ; A input "Unesite drugu promjenljivu: " ; B input "Unesite trecu promjenljivu: " ; C input "Unesite cetvrtu promjenljivu: " ; D input "Unesite petu promjenljivu: " ; E ' Brojanje promjenjivih koje su jednake 0 K=0 'ova linija se moe ali ne mora pisati if A=0 then K=K+1 end if if B=0 then K=K+1 end if if C=0 then K=K+1 end if if D=0 then K=K+1 end if if E=0 then K=K+1 end if ' Odredjivanje nastavka zavrsnog komentara select case K case 1 broj$=" broj je jednak 0." case 2,3,4 broj$=" broja su jednaka 0." case else broj$=" brojeva je jednako 0." end select ' Ispis rezultata na ekran print "Od navedenih pet brojeva "; K; broj$

9. Program koji od pet zadatih promjenljivih sabira samo pozitivne brojeve i mnozi iste (pomocu akumulatora) Moguce rjesenje ispisano na ekran: Unesite prvu promjenljivu: 2 Unesite drugu promjenljivu: -5 Unesite trecu promjenljivu: -9 Unesite cetvrtu promjenljivu: 10 Unesite petu promjenljivu: 23 Suma pozitivnih brojeva datog niza iznosi: 35 Proizvod pozitivnih brojeva datog niza iznosi: 460 Rjeenje: ' AKUMULATORI 'S=0 'if uslov then ' S=S+X 'end if ' Unos pet promjenljivih input "Unesite prvu promjenljivu: " ; A input "Unesite drugu promjenljivu: " ; B input "Unesite trecu promjenljivu: " ; C input "Unesite cetvrtu promjenljivu: " ; D input "Unesite petu promjenljivu: " ; E S=0 'ova linija se moe ali ne mora pisati if A>0 then S=S+A end if if B>0 then S=S+B end if if C>0 then S=S+C end if if D>0 then S=S+D end if if E>0 then S=S+E end if ' Ispis rezultata na ekran print "Suma pozitivnih brojeva datog niza iznosi: "; S ' Program koji od pet zadatih promjenljivih mnoi samo ' pozitivne brojeve P=1 if A>0 then P=P*A end if

if B>0 then P=P*B end if if C>0 then P=P*C end if if D>0 then P=P*D end if if E>0 then P=P*E end if ' Ispis rezultata na ekran --------------------------print "Proizvod pozitivnih brojeva datog niza iznosi: "; P

Rjeenje ovog 10-tog zadatka: dim x(20), y(20), bodovi(20) input "Unesite ime i prezime strijelca: "; ImePrezime$ input "Unesite broj hitaca: ";n for i=1 to n

print "Unesite koordinate ";i;".hitca:" input "x=";x(i) input "y=";y(i) if abs(x(i))<=10 and abs(y(i))<=10 then bodovi(i)=10 else if abs(x(i))<=25 and abs(y(i))<=25 then bodovi(i)=5 else bodovi(i)=0 end if end if s=s+bodovi(i) next i print print "Ime i prezime strijelca: ";ImePrezime$ print print "R.br.","x","y","Bodovi" print "------------------------------------------------" for i=1 to n print i,x(i),y(i),bodovi(i) next i print "------------------------------------------------" print "Ukupan broj bodova:";s

Rjeenje ovog 11-tog zadatka: input "Unesite ime i prezime strijelca: ";Ime$ input "Unesite broj hitaca: "; N for i=1 to N input "Unesite x koordinatu ";i;". hitca: "; X(i) input "Unesite y koordinatu ";i;". hitca: "; Y(i) next print print "Ime i prezime strijelca: "; Ime$ print print "R.br.","x","y","Bodovi" print "------------------------------------------------" for i=1 to N x=X(i) y=Y(i) if abs(x)<=10 and abs(y)<=10 then D=10 S=S+D else if abs(x)<=25 and abs(y)<=25 then

D=5 S=S+D else D=0 end if end if print i,x,y,D next print "------------------------------------------------" print "Ukupno bodova: ";S end

12. Putem tastature unijeti dimenziju matriceA(MxM), a potom i njene clanove.Odrediti minimalne i maksimalne clanove sa glavne i sporedne dijagonale. Na ekranu ispisati matricu A(MxM) i dobijene minimalne clanove. Jedno od rjesenja bi izgledalo: Unesite broj redova i kolona matrice A: 4 'Nakon unosa elemenata matrice dobili bi sljedece rjeenje Minimalni clan na glavnoj dijagonali je: 1 Minimalni clan na sporednoj dijagonali je: 4 Maksimalni clan na glavnoj dijagonali je: 19 Maksimalni clan na sporednoj dijagonali je: 17 Matrica A(4x4): 1.00 2.00 3.00 9.00 8.00 7.00 4.00 6.00 5.00 11.00 10.00 15.00 17.00 16.00 18.00 19.00 Ako elite ponoviti program pritisnite Enter. Rjeenje: ' Pocetak programa ' Dimenzionisanje niza dim A(20,20) ' Unos matrice A ------------------------------------input "Unesite broj redova i kolona matrice A: ";M print for i=1 to M for j= 1 to M input "Unesite element matrice A(";i;",";j;"): ";A(i,j) next j next i print ' Izdvajanje minimanih elemenata sa glavne i sporedne dijagonale MinGL=A(1,1)

MinSP=A(1,M) for i=1 to M if A(i,i)<MinGL then MinGL=A(i,i) end if if A(i,M+1-i)<MinSP then MinSP=A(i,M+1-i) end if next i ' Ispis minimalnog clana sa glavne i sporedne dijagonale print "Minimalni clan na glavnoj dijagonali je: ";MinGL print "Minimalni clan na sporednoj dijagonali je: ";MinSP print ' Izdvajanje maksimalnih elemenata sa glavne i sporedne dijagonale MaxGL=A(1,1) MaxSP=A(1,M) for i=1 to M if A(i,i)>MaxGL then MaxGL=A(i,i) end if if A(i,M+1-i)>MaxSP then MaxSP=A(i,M+1-i) end if next i ' Ispis maksimalnog clana sa glavne i sporedne dijagonale print "Maksimalni clan na glavnoj dijagonali je: ";MaxGL ' Ispis matrice A u obliku red po red ---------------print "Matrica A(";M;"x";M;"): " for i=1 to M for j=1 to M print using("####.##",A(i,j)); 'formatirani ispis next j print next i ' Odluka o ponavljanju programa ---------------------input "Ako elite ponoviti program pritisnite Enter."; Odg if Odg=0 then goto [start] ' Kraj programa -------------------------------------End

13. Napisati program koji,nakon unoenja matrice A(MxN),formira nizove druge i trece kolone uneene matrice,te ih onda sabira i vrsi sortiranje saberenog niza u rastucem intervalu. Na ekranu ispisati dobijeno rjeenje. Moguce rjesenje bi izgledalo: Unesite broj redova matrice A: 4 Unesite broj kolona matrice A: 3 ' Nakon unosa elemenata dobijemo rjesenje Uneena matrica A( 4 ,3) glasi: 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 10.0 11.0 12.0 Clanovi druge kolone matrice su: 2.0 5.0 8.0 11.0 Clanovi trece kolone matrice su: 3.0 6.0 9.0 12.0 zbir druge i trece kolone 5.0 11.0 17.0 sortiran niz Zbira kolona 5.0 11.0 17.0 Rjeenje: ' Dimenzionisanje nizova dim A(20,20),DRUGI(20), TRECI(20), ZBIR(20) ' Unosenje elemenata matrice ----input "Unesite broj redova matrice A: ";M input "Unesite broj kolona matrice A: ";N for i=1 to M for j=1 to N input "Unesite element matrice A(";i;",";j;"): ";A(i,j) next j next i print ' Ispis matrice na ekran ---------------------print "Uneena matrica A( ";M;" ,";N;") glasi:" for i=1 to M for j=1 to N print using("####.#",A(i,j)); next j print next i ' Izdvajanje i ispis drugog reda matrice ------------print "Clanovi druge kolone matrice su: " j=2 for i=1 to M drugi(i)=A(i,j)

print using("####.#",drugi(i)); next i print print "Clanovi trece kolone matrice su: " j=3 for i=1 to M treci(i)=A(i,j) print using("####.#",treci(i)); next i print ' Formiranje i ispis novog reda matrice print "zbir druge i trece kolone" for i=1 to N zbir(i)=drugi(i)+treci(i) print using("####.#",zbir(i)); next i print ' Ispis sortiranog niza ZBIR u rastucem redoslijedu print "sortiran niz Zbira kolona" sort zbir()1,N for i=1 to N print using("####.#",zbir(i)); next i print

20. Napisati program koji od unesene kvadratne matrice A,oformi novu matricu B sa zamjenom prvog i zadnje reda,te onda izdvoji novi niz C sa najvecim elemementom svakog reda,,te taj niz pomnozi sa matricom B.Rezultat ispisati u datoteku.. Rezultat nakon upisa u datoeku moze biti sljedeci: Matrica A: 6.00 3.00 5.00 2.00 7.00 1.00 Matrica B: 7.00 1.00 5.00 2.00 6.00 3.00 Niz C: 7.00 9.00 8.00 Niz D: 90.00 125.00 133.00 Rjeenje: dim A(50,50), B(50,50), C(50), D(50) open "C:\datoteke\rezultati.txt" for append as #1 input "Unesite broj redova i kolona: ";N for i=1 to N for j=1 to N input "A(";i;",";j;")=";A(i,j) 'B(N+1-i,j)=A(i,j) next j next i for i=1 to N for j=1 to N B(N+1-i,j)=A(i,j) next j next i for i=1 to N MAX=B(i,1) for j=1 to N if B(i,j)>MAX then MAX=B(i,j) next j C(i)=MAX next i for i=1 to N D(i)=0 for j=1 to N 8.00 9.00 4.00 4.00 9.00 8.00

D(i)=D(i)+B(i,j)*C(j) next j next i print #1, "Matrica A:" for i=1 to N for j=1 to N print #1, using("####.##",A(i,j)); next j print #1,"" next i print #1,"" print #1, "Matrica B:" for i=1 to N for j=1 to N print #1, using("####.##",B(i,j)); next j print #1,"" next i print #1,"" print #1, "Niz C:" for i=1 to N print #1, using("####.##",C(i)) next i print #1,"" print #1, "Niz D:" for i=1 to N print #1, using("####.##",D(i)) next i close #1

Uradio:

Aldin Merdi

You might also like