[ soulripper @ 28.04.2002. 18:50 ] @
hitno mi je potrebno resenje sledeceg zadatka..
UCHITATI PREZIME I IME RADNIKA,TE NJEGOV LICHNI DOHODAK ZA SVAKI MJESEC U GODINI.ISPITATI UKUPNI PROSJECHNI I MJESECHNI LICHNI DOHODAK ZA TU GODINU
uz napomenu da o pascalu znam vrlo malo..

unapred hvala..
[ tomdam @ 29.04.2002. 04:33 ] @
Ovo bi otprilike trebalo da radi:
Program plata;
type mesec=array[1..12]of real;
Radnik=record
Ime,prezime:string;
mes:mesec;
end;
var R:Radnik;
i:integer;
suma:real;
begin
write('unesi Ime i Prezime:');
readln(R.Ime);
readln(R.Prezime);
writeln('Unesi plate za mesece:');
suma:=0;
for i :=1 to 12 do
begin
write(i,'.');
readln(R.mes);
suma:=R.mes+suma;
end;
writeln('Ukupni godisnji dohodak je:', suma:10:2);
writeln('Prosecni dohodak je:', suma/12:10:2);
readln;
end.

To bi trebalo da je to.
mozes malo lepse da uradis ispis poruka.... to nije tesko.
da i jos mozes jedan for da izvrtis od 1 do 12 da ponovo ispises mesecne dohotke ako je potrebno.
Pozdrav!
[ soulripper @ 29.04.2002. 15:57 ] @
puno hvala tomdam..
a kad bi hteo prvo da zadam broj radnika, da li mi za to treba procedura...
a da se pri ispisu podataka prikazu plate svih radnika?
[ tomdam @ 01.05.2002. 04:57 ] @
Ako zelis da pamtis podatke o grupi radnika, a ne o samo jednom (sto je i logicno)
prethodni program bi morao dosta da se izmeni.
Prvo treba da odredis strukturu podataka u kojoj ces drzati slogove. npr. Niz
Otprilike to bi izgledalo ovako:

program radnici2;
type plate=array[1..12]of real;
Radnik=record
Ime,prezime:string;
pl:plate;
end;
Niz=array[1..100] of radnik;
var N:Niz;
br:integer;

procedure unos;
var R:radnik;
i:integer;
begin
write('unesi Ime i Prezime:');
readln(R.Ime);
readln(R.Prezime);
writeln('Unesi plate za mesece:');
for i :=1 to 12 do
begin
write(i,'.');
readln(R.pl);
end;
br:=br+1; {br je broj unetih radnika}
N[br]:=R
end;

procedure prikaz;
var i,j:integer;
begin
writeln('Unesi broj radnika cije podatke zelis da vidis:');
readln(j);
for i:=1 to 12 do
writeln('mesec ',i,'. ',N[j].pl);{ispisuje sve plate zadatog radnika}

{ mozes da odradis na slican nacin i da ti ispise sve plate za odredjeni mesec:
writeln(' unesi mesec 1-12');
readln (j);
for i:=1 to br do {br je broj radnika}
writeln('radnik broj:',i,' ',N.pl[j]);
}
end;

end;
procedure meni;
var i:integer;
begin
writeln(' MENI ');
writeln( '1 - prikaz');
writeln(' 2 - unos');
writeln(' 3 - izlaz');
repeat readln(i) until i in [1,2,3];
{ ponavlja unos broja "i" sve dok se ne unese 1, 2 ili 3}
case i of
1: unos;
2:prikaz;
3:halt; {funkcija za izlazak iz programa}
end;
end;
{GLAVNI PROGRAM}
BEGIN
meni;
END.
Ovo bi trebalo da radi. uradio sam ga na brzaka tako da mozda ima koja greska, ali u principu to je to. to moze da ti bude ideja, a ti je prilagodi svojim potrebama.

Pozdrav
Damjan.
[ Iceshield @ 06.12.2003. 08:55 ] @
Citat:
soulripper:
hitno mi je potrebno resenje sledeceg zadatka..
UCHITATI PREZIME I IME RADNIKA,TE NJEGOV LICHNI DOHODAK ZA SVAKI MJESEC U GODINI.ISPITATI UKUPNI PROSJECHNI I MJESECHNI LICHNI DOHODAK ZA TU GODINU
uz napomenu da o pascalu znam vrlo malo..

unapred hvala..

Nemoj da vichesh po forumima.