Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 8

1.

Program zad1;
var
a,b,c,d:integer;
x:real;
function zbir(x1,x2:integer):integer;
begin
zbir:= x1 + x2;
end;
function razlika(x1,x2:integer):integer;
begin
razlika:=x1-x2;
end;
begin
writeln('unesite a,b,c,d');
readln(a,b,c,d);
x:= zbir(a,b)*razlika(a,b) / sqr(razlika(c,d));
writeln('x = ', x:8:3);
readln
end.
2.
program zad2;
var
a,b,c,d:integer;
h:real;
function min(x1,x2,x3:integer):integer;
begin
if (x1<x2) and (x1<x3) then min:=x1;
if (x2<x1) and (x2<x3) then min:=x2;
if (x3<x1) and (x3<x2) then min:=x3;
end;
function max(x1,x2,x3:integer):integer;
begin
if (x1>x2) and (x1>x3) then max:=x1;
if (x2>x1) and (x2>x3) then max:=x2;
if (x3>x1) and (x3>x2) then max:=x3;
end;
function sr(x1,x2,x3:integer):real;
begin
sr:=(x1+x2+x3)/3
end;
begin
Writeln('unesite a,b,c,d');
Readln(a,b,c,d);
h:=(a + max(a,b,c) + sr(a,b,d)) / (b + min(d,a,b));
Writeln('h = ', h:8:3);
Readln
end.
3.
Program zad3;
var
q,w,e,n:integer;
kv,step,fakt:real;
procedure unos;
begin
Writeln('unesi tri broja i stepen n');
Readln(q,w,e,n);
end;
function kvadrati(r,v,g:integer):real;
begin
kvadrati:=sqr(r) + sqr(v) + sqr(g);

end;
function stepen(r,p:integer):real;
var i:integer;
begin
stepen:=1;
for i:=1 to p do
stepen:=stepen*r;
end;
function stepeni(i,o,k,b):real;
begin
stepeni:=stepen(i,b) + stepen(o,b) + stepen(k,b);
end;
function fact(x:integer):real;
var i:integer;
begin
fact:=1;
for i:=1 to x do
fact:=fact * i;
end;
function facts(y,z,s:integer):real;
begin
facts:=fact(y) + fact(z) + fact(s);
end;
procedure ispis(a,b,c:real);
begin
writeln('a^2+b^2+c^2 = ', a:8:3);
writeln('a^n+b^n+c^n = ', b:8:3);
writeln('a!+b!+c! = ', c:8:3);
end;
begin
unos;
kv:=kvadrati(q,w,e);
step:=stepeni(q,w,e,n);
fakt:=facts(q,w,e);
ispis;
readln
end.
4.
Program zad4;
var
a,i,n,minimum:integer;
function min(x1,x2:integer):integer;
begin
min:=x2;
if x1<x2 then min:=x1;
end;
begin
Writeln('koliko brojeva?');
Readln(n);
minimum:=0;
for i:=1 to n do
begin
Writeln('unesi broj ',i);
Readln(a);
minimum:=min(a,minimum);
end;
Writeln('minimum = ', minimum:8);
Readln
end.
5.

Program zad5;
var
x,y:integer;
z:real;
function min(x1,x2:integer):integer;
begin
min:=x2;
if x1<x2 then min:=x1;
end;
function max(x1,x2:integer):integer;
begin
max:=x2;
if x1>x2 then max:=x1;
max:=max*max;
end;
begin
Writeln('unesi x,y');
Readln(x,y);
z:=min(x,y) + 0.5/(1+max(x,y));
Writeln('z= ', z:8:3);
Readln
end.
6.
Program zad6;
var
x,y,w:integer;
function min(x1,x2:integer):integer;
begin
min:=x2;
if x1<x2 then min:=x1;
end;
function max(x1,x2:integer):integer;
begin
max:=x2;
if x1>x2 then max:=x1;
end;
begin
Writeln('unesite x,y');
Readln(x,y);
If (y>=0) then
w=min(x,y)
else
w=max(sqr(x),sqr(y));
Writeln ('w= ',w:8);
Readln
end.
7. ulevo
program zad7;
var i, n, pom : integer;
a: array[1.. 100] of integer;
begin
write('Unesite broj clanova niza (n<= 100)'); readln(n);
writeln('Unesite clanove niza');
for i:= 1 to n do read(a[i]);
pom := a[l];
for i:=l to n-1 do a[i]:= a[i+l];
a[n]:=pom;
writeln;
for i:= 1 to n do write(a[i]:6)
end.

7. udesno
program zad7;
var i, n, pom : integer;
a: array[1.. 100] of integer;
begin
write('Unesite broj clanova niza (n<= 100)'); readln(n);
writeln('Unesite clanove niza');
for i:= 1 to n do read(a[i]);
pom := a[n];
for i:=l to n-1 do a[i + 1]:= a[i];
a[1]:=pom;
writeln;
for i:= 1 to n do write(a[i]:6)
end.
9.
program BrojanjeSlova;
var zn: char;
broj: array['A'..'Z'] of integer;
slovo: char;
begin
for slovo := 'A' to 'Z' do broj [slovo] :=0;
repeat
read(zn);
for slovo:= 'A' to 'Z' do
if zn = slovo then broj [slovo] :=broj [slovo]+
1
until eof;
writeln('Broj pojavljivanja velikih slova u ucitanom tekstu');
for slovo := 'A' to 'Z' do
if broj [slovo] <>0 then writeln(slovo,' ', broj [slovo])
end.
10.
program pretrazivanje;
var
i, n, a: integer;
x: array[1..100]of integer; ind: boolean;
begin
write('Broj clanova niza ');
readln(n);
writeln('Unesite sve clanove niza');
for i:= 1 to n do read(x[i]);
readln;
write('Unesite trazeni broj');
readln(a);
ind := true;
i:=l;
while (i<=n) and ind do
begin
if a= x[i] then ind := false;
i:=i+l
end;
if not ind then writeln(i-l ,'. clan niza jednak je ', a)
else writeln('Svi clanovi niza razliciti su od', a)
end.
11.
program Najveci;
const naj = 200;
type
niz=array[l..naj] of real;
dim = L.naj;
var
x: niz;
n, i: dim;
function max(x:niz; n:dim):real;
var
j: dim;
pom: real;

begin
pom:=x[l];
for j:=2 to n do
if x[j]>pom then pom := x[j];
max := pom
end;
begin
write('Broj clanova niza ');
readln(n);
writeln('Unesite clanove niza');
for i:=l to n do
read(x[i]);
writeln('Najveci clan niza je: ',max(x,n))
end.
program Najmanji;
const naj = 200;
type
niz=array[l..naj] of real;
dim = L.naj;
var
x: niz;
n, i: dim;
function min(x:niz; n:dim):real;
var
j: dim;
pom: real;
begin
pom:=x[l];
for j:=2 to n do
if x[j]<pom then pom := x[j];
min := pom
end;
begin
write('Broj clanova niza ');
readln(n);
writeln('Unesite clanove niza');
for i:=l to n do
read(x[i]);
writeln('Najmaji clan niza je: ',min(x,n))
end.
12.
program sortiranje;
const max=500;
var
a: array[ 1..max] of integer;
n,k: integer;
procedure izbor2(donja,gornja:integer);
var i, j, k, pom: integer;
begin
for i:=donja to gornja-1 do
begin
k:=i;
pom:=a[i];
for j:=i+l to gornja do
if a[j] < pom then
begin
pom:=a[j];
k:=j
end;
a[k]:=a[i];
a[i]:=pom
end
end;
begin
writeln('Unesite broj clanova niza');
readln(n);
writeln('Unesite clanove niza');
for k:= 1 to n do read(a[k]);

izbor2(l,n);
writeln('Sortirani niz:');
for k:= 1 to n do write(a[k],'')
end.
13.
program MatOp;
var
i,j,n: 1..20;
A: array[1..20,1..20]of real;
sumGore, sumDole, pro: real;
begin
sumGore:=0.0;
sumDole:=0.0;
pro:=1.0;
writeln('Unesite format matrice A ');
readln(n);
writeln('Unesite elemente matrice A po vrstama');
for i:= 1 to n do
begin
for j:= 1 to n do read(A[i,j]);
end;
for i:=l to n do
for j:=l to n do
if (i<j) then SumGore := sumGore + A[i,j]
else if (i=j) then pro:=pro*A[i,i]
else sumDole:=sumDole+A[i,j];
writeln('Suma iznad glavne dijagonale je:', sumGore);
writeln('Proizvod na glavnoj dijagonali je:', pro);
writeln('Suma ispod glavne dijagonale je:', sumDole);
end.
14.
program MatOp;
var
i,j,m,n: 1..20;
A: array[1..20,1..20]of real;
zbir,min: real;
begin
writeln('Unesite dimenzije matrice A ');
readln(m,n);
writeln('Unesite elemente matrice A po vrstama');
for i:= 1 to m do
begin
for j:= 1 to n do read(A[i,j]);
end;
for i:= 1 to m do
begin
for j:= 1 to n do write(A[i,j]);
writeln;
end;
zbir:=0;
for j:=l to n do zbir:= zbir + A[3,j];
min:=A[1,1]
for i:= 1 to m do
begin
for j:= 1 to n do if min>A[i,j] then min:=A[i,j];
end;
writeln('zbir elemenata 3. vrste:', zbir:8:0);
writeln('najmanji element:', min:8:0);
end.
15.
program MatOp;
var
i,j,m,n: 1..20;
A: array[1..20,1..20]of real;
zbirp,zbirn: real;

maxcol:array[1..20] of real;
begin
writeln('Unesite dimenzije matrice A ');
readln(m,n);
writeln('Unesite elemente matrice A po vrstama');
for i:= 1 to m do
begin
for j:= 1 to n do read(A[i,j]);
end;
zbirp:=0; zbirn:=0;
for i:= 1 to m do
begin
for j:= 1 to n do begin
if a[i,j] < 0 then zbirn:=zbirn + a[i,j]
else zbirp:=zbirp+a[i,j];
end;
end;
min:=A[1,1]
for i:= 1 to m do
begin
for j:= 1 to n do if min<A[i,j] then min:=A[i,j];
end;
for i:=1 to m do maxcol[i]:=0;
for i:=1 to m do begin
maxcol[i]:=a[i,1];
for j:=1 to n do begin
if maxcol[i] < a[i,j] then maxcol[i]:=a[i,j];
end;
end;
writeln('zbir poz:', zbirp:8:0);
writeln('zbir neg:', zbirn:8:0);
for i:=1 to m do
writeln('max za kolonu', i, ':', maxcol[i]:8:0);
end.
16.
program MatOp;
var
i,j,m,n: 1..20;
A: array[1..20,1..20]of real;
sumDole: real;
mincol:array[1..20] of real;
begin
writeln('Unesite dimenzije matrice A ');
readln(m,n);
writeln('Unesite elemente matrice A po vrstama');
for i:= 1 to m do
begin
for j:= 1 to n do read(A[i,j]);
end;
sumDole:=0;
for i:=l to m do
for j:=l to n do
if i>j then sumDole:=sumDole+A[i,j];
writeln('Suma ispod glavne dijagonale je:', sumDole);
min:=A[1,1]
for i:= 1 to m do
begin
for j:= 1 to n do if min<A[i,j] then min:=A[i,j];
end;
for i:=1 to m do mincol[i]:=0;
for i:=1 to m do begin

mincol[i]:=a[i,1];
for j:=1 to n do begin
if mincol[i] > a[i,j] then mincol[i]:=a[i,j];
end;
end;
for i:=1 to m do
writeln('min za kolonu', i, ':', mincol[i]:8:0);
end.
17.
program MatOp;
var
i,j,m,n: 1..20;
A: array[1..20,1..20]of real;
proizvod,max: real;
begin
writeln('Unesite dimenzije matrice A ');
readln(m,n);
writeln('Unesite elemente matrice A po vrstama');
for i:= 1 to m do
begin
for j:= 1 to n do read(A[i,j]);
end;
for i:= 1 to m do
begin
for j:= 1 to n do write(A[i,j]);
writeln;
end;
proizvod:=1;
for j:=l to n do proizvod:= proizvod * A[4,j];
max:=A[1,1]
for i:= 1 to m do
begin
for j:= 1 to n do if max<A[i,j] then max:=A[i,j];
end;
writeln('zbir elemenata 4. vrste:', zbir:8:0);
writeln('najveci element:', max:8:0);
end.
18.
program MatOp;
var
i,j,m,n: 1..20;
A: array[1..20,1..20]of real;
proizvod:array[1..20] of integer;
begin
writeln('Unesite dimenzije matrice A ');
readln(m,n);
writeln('Unesite elemente matrice A po vrstama');
for i:= 1 to m do
begin
for j:= 1 to n do read(A[i,j]);
end;
for i:= 1 to m do
begin
for j:= 1 to n do write(A[i,j]);
writeln;
end;
for i:=l to m do proizvod[i]:= 1;
for i:= 1 to m do
begin
for j:= 1 to n do proizvod[i]:=proizvod[i] * a[i,j];
end;

for i:=1 to m do
writeln('proizvod ', i, '. kolone:', proizvod[i]:8:0);
end.
19.
program MatOp;
var
i,j,m,n: 1..20;
A: array[1..20,1..20]of real;
prDole: real;
mincol:array[1..20] of real;
begin
writeln('Unesite dimenzije matrice A ');
readln(m,n);
writeln('Unesite elemente matrice A po vrstama');
for i:= 1 to m do
begin
for j:= 1 to n do read(A[i,j]);
end;
prDole:=0;
for i:=l to m do
for j:=l to n do
if i>j then if a[i,j]>=0 then prDole:= prDole * A[i,j];
writeln('proizvod poz. ispod glavne dijagonale je:', prDole);
min:=A[1,1]
for i:= 1 to m do
begin
for j:= 1 to n do if min<A[i,j] then min:=A[i,j];
end;
for i:=1 to m do mincol[i]:=0;
for i:=1 to m do begin
mincol[i]:=a[i,1];
for j:=1 to n do begin
if mincol[i] > a[i,j] then mincol[i]:=a[i,j];
end;
end;
for i:=1 to m do
writeln('min za kolonu', i, ':', mincol[i]:8:0);
end.
20.
program MatOp;
var
i,j,m,n: 1..20;
A: array[1..20,1..20]of real;
proizvod,zbir,min: real;
begin
writeln('Unesite dimenzije matrice A ');
readln(m,n);
writeln('Unesite elemente matrice A po vrstama');
for i:= 1 to m do
begin
for j:= 1 to n do read(A[i,j]);
end;
for i:= 1 to m do
begin
for j:= 1 to n do write(A[i,j]);
writeln;
end;
proizvod:=1; zbir:=0;
for i:=1 to m do begin
for j:=1 to n do begin
if a[i,j] >= 0 then proizvod:=proizvod * a[i,j]
else zbir:=zbir + a[i,j];
end;

end;
min:=a[2,1];
for j:=1 to n do if min > a[2,j] then min:=a[2,j];
writeln('proizvod pozitivnih:', proizvod:8:0);
writeln('zbir negativnih:', zbir:8:0);
writeln('najmanji 2. kolone:', min:8:0);
end.
21.
program Pretraga;
const max = 25;
naj=100;
type naziv = string[max];
tiposobe = record
ime:naziv;
starost:0..100;
adresa: record
grad, ulica: naziv;
broj:1..1000;
end
end;
var
osoba: tiposobe;
ime, ulica: array [1..naj] of naziv;
broj: array[l..naj] of 1..1000;
n,j: integer;
procedure citaj(var rec:naziv);
begin
readln (rec);
end;
begin
writeln ('Unesite podatke o svakoj osobi!' );
writeln;
n:=0;
while not eof do
begin
write('Ime:'); citaj(osoba.ime);
write('Starost:'); readln(osoba.starost);
write('Grad:'); citaj(osoba.adresa.grad);
write('Ulica:'); citaj(osoba.adresa.ulica);
write('Broj:'); readln(osoba.adresa.broj);
writeln;
if (osoba.adresa.grad = 'Knjazevac') and (osoba.starost
> 18)
then begin
n:= n+1;
ime[n]:=osoba.ime;
ulica[n]:=osoba.adresa.ulica;
broj [n] :=osoba.adresa.broj
end
end;
writeln;
writeln('SPISAK TRAZENIH OSOBA');
for j:=l to n do
writeln (j,'. ', ime [j],' ',ulica [j],' ', broj [j])
end.
22.
program zad22;
type knjige = record
ime:string;
prezime:string;
naziv:string;
godina:1900..2007;
end;

var knjiga: array[1..100] of knjige; autor,pom:string;


naziv: array[1..100] of string; n,i,j:integer;
begin
writeln ('Unesite podatke o svakoj knjizi!' );
writeln;
n:=0; i:=0;
while not eof do
begin
i:=i+1;
write('Ime:'); readln(knjiga[i].ime);
write('Prezime:'); readln(knjiga[i].prezime);
write('Naziv:'); readln (knjiga[i].naziv);
write('Godina:'); readln (knjiga[i].godina);
writeln;
end;
write('trazeno prezime autora?'):readln(autor);
for j:=1 to i do begin
if (knjiga[i].prezime = autor) and (knjiga[i].godina >
1970)
then begin
n:= n+1;
naziv [n]:= knjiga[i].naziv;
end
end;
writeln('pronadjeni rezultati:');
for j:=1 to n do writeln(naziv[j]);
for j:=1 to i-1 do begin
for n:=j+1 to i do begin
if (knjiga[j].ime >= knjiga[n].ime) and
(knjiga[j].prezime > knjiga[n].prezime) then begin
pom:=knjiga[j];
knjiga[j]:=knjiga[n];
knjiga[n]:=pom;
end;
end;
end;
for j:=1 to i do writeln(knjiga[j].ime,' ', knjiga[j].prezime);
end.
23.
program zad23;
type radnici = record
ime:string;
prezime:string;
tel:string;
end;
var radnik: array[1..100] of radnici; ime,prezime,pom:string;
n,i,j:integer;
begin
writeln ('Unesite podatke o svakom radniku!' );
writeln;
i:=0;
while not eof do
begin
i:=i+1;
write('Ime:'); readln(radnik[i].ime);
write('Prezime:'); readln(radnik[i].prezime);
write('Tel:'); readln (radnik[i].tel);
writeln;
end;

write('trazeno prezime i ime radnika?'):readln(prezime, ime);


for j:=1 to i do begin
if (radnik[i].prezime = prezime) and (radnik[i].ime =
ime)
then writeln('trazeni broj telefona:', radnik[i].tel);
end;
for j:=1 to i-1 do begin
for n:=j+1 to i do begin
if radnik[j].prezime > radnik[n].prezime then begin
pom:=radnik[j];
radnik[j]:=radnik[n];
radnik[n]:=pom;
end;
end;
end;
for j:=1 to i do writeln(radnik[j].prezime,' ', radnik[j].ime);
end.
24.
program zad24;
type gosti = record
ime:string;
prezime:string;
drzava:string;
lk:string;
end;
var gost: array[1..100] of gosti; drzava,pom:string;
n,i,j:integer;
begin
writeln ('Unesite podatke o svakom gostu!' );
writeln;
i:=0;
while not eof do
begin
i:=i+1;
write('Ime:'); readln(gost[i].ime);
write('Prezime:'); readln(gost[i].prezime);
write('Drzava:'); readln (gost[i].drzava);
write('Br licne karte:'); readln (gost[i].lk);
writeln;
end;
write('trazena drzava?'):readln(drzava);
for j:=1 to i do begin
if gost[i].drzava = drzava then begin
writeln(gost[i].ime);
writeln(gost[i].prezime);
writeln(gost[i].lk);
end
end;
for j:=1 to i-1 do begin
for n:=j+1 to i do begin
if gost[j].drzava > gost[n].drzava then begin
pom:=gost[j];
gost[j]:=gost[n];
gost[n]:=pom;
end;
end;
end;
for j:=1 to i do writeln(gost[j].drzava);
end.

end;
25.
program zad25;
type ucenici = record
sifra:string;
bodovi:integer;
end;
var ucenik: array[1..100] of ucenici;
n,i,j:integer;
begin

end;
for j:=1 to i do writeln(artikal[j].naziv, ' ', artikal[j].cena, ' ',
artikal[j].kolicina);
writeln('unesite naziv artikla');readln(search);
for i:=1 to i do if artikal[j].naziv = search then
writeln(artikal[j].cena);
end.

writeln ('Unesite podatke o svakom uceniku!' );


writeln;
i:=0;
while not eof do
begin
i:=i+1;
write('sifra:'); readln(ucenik[i].sifra);
write('bodovi:'); readln(ucenik[i].bodovi);
writeln;
end;
for j:=1 to i-1 do begin
for n:=j+1 to i do begin
if ucenik[j].bodovi < ucenik[n].bodovi then begin
pom:=ucenik[j];
ucenik[j]:=ucenik[n];
ucenik[n]:=pom;
end;
end;
end;
for j:=1 to i do writeln(ucenik[j].sifra, ' ', ucenik[j].bodovi);
end.
26.
program zad26;
type artikli = record
naziv:string;
kolicina:integer;
cena:integer;
end;
var artikal: array[1..100] of artikli;
n,i,j:integer; search:string;
begin
writeln ('Unesite podatke o svakom artiklu!' );
writeln;
i:=0;
while not eof do
begin
i:=i+1;
write('naziv:'); readln(artikal[i].naziv);
write('kolicina:'); readln(artikal[i].kolicina);
write('cena:'); readln(artikal[i].cena);
writeln;
end;
for j:=1 to i-1 do begin
for n:=j+1 to i do begin
if artikal[j].cena < artikal[n].cena then begin
pom:=artikal[j];
artikal[j]:=artikal[n];
artikal[n]:=pom;
end;

27.
program zad27;
type automobili = record
ime:string;
prezime:string;
marka:string;
registracija:string;
godiste:1900..2007;
end;
var auto: array[1..100] of automobili; pom:string;
n,i,j:integer;
begin
writeln ('Unesite podatke o svakom automobilu!' );
writeln;
i:=0;
while not eof do
begin
i:=i+1;
write('Ime:'); readln(auto[i].ime);
write('Prezime:'); readln(auto[i].prezime);
write('Marka:'); readln (auto[i].marka);
write('Registracija:'); readln (auto[i].registracija);
write('Godiste:'); readln (auto[i].godiste);
writeln;
end;
for j:=1 to i do begin
if (auto[i].marka = 'BMW') and (auto[i].godiste < 2000)
then writeln(auto[j].ime, ' ', auto[j].prezime, ' ',
auto[j].registracija);
end;
for j:=1 to i-1 do begin
for n:=j+1 to i do begin
if auto[j].prezime > auto[n].prezime then begin
pom:=auto[j];
auto[j]:=auto[n];
auto[n]:=pom;
end;
end;
end;
for j:=1 to i do writeln(auto[j].prezime);
end.
28.
program zad28;
type ucenici = record
ime:string;
prezime:integer;
ocena:real;
end;
var ucenik: array[1..100] of ucenici;
n,i,j:integer; proc:real;

begin
writeln ('Unesite podatke o svakom uceniku!' );
writeln;
i:=0;proc:=0;
while not eof do
begin
i:=i+1;
write('ime:'); readln(ucenik[i].ime);
write('prezime:'); readln(ucenik[i].prezime);
write('ocena:'); readln(ucenik[i].ocena);
proc:=proc+ucenik[i].ocena;
writeln;
end;
proc:=proc/i;
for j:=1 to i-1 do begin
for n:=j+1 to i do begin
if (ucenik[j].prezime >= ucenik[n].prezme) and
(ucenik[j].ime > ucenik[n].ime) then begin
pom:=ucenik[j];
ucenik[j]:=ucenik[n];
ucenik[n]:=pom;
end;
end;
end;
for j:=1 to i do writeln(ucenik[j].prezime, ' ', ucenik[j].ime);
writeln('prosecna ocena svih ucenika:',proc:6:0);
end.

You might also like