Paskal zadatak

Paskal zadatak

offline
  • Pridružio: 09 Feb 2016
  • Poruke: 1

Имам сутра полагање испита из Паскала, радим писмено, па да питам да ли може неко да ми одради овај задатак:

1. Написати програм којим се формира датотека olimpijada.dat која садржи име такмичара, годину рођења, број освојених поена и земљу из које је долази такмичар. Слог датотеке има поља ime, godina, poeni и zemlja. Унос података се завршава када се уместо имена такмичара унесе реч ‘kraj’.
Након формирања датотеке омогућити штампање на екрану имена такмичара који су освојили више од 100 поена, као и њихове земље. Одредити и на екрану исписати колико постоји различитих земаља у датотеци. Једна земља може имати више такмичара.

Унапред хвала на одговору.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 15 Maj 2009
  • Poruke: 963

To su onda binarne datoteke?
Koji kompajler koristis?
Evo u Free Pascal sta sam uspeo da uradim:

ime programa; deklaracija tipa: slog = record    ime, zemlja: string;    godina, poeni: integer; kraj; deklaracija promenljivih    podaci: slog;    datoteka: fajl od slog;    i, broj, ucitano: integeri;        { i za petlju, u broj cemo da pamtimo koliko ima razlicitih zemalja a u ucitano koliko je podataka ucitano iz datoteke }    zemlje: niz clanova npr. 1..100 od string; { ovde cemo da pamtimo koje smo sve zemlje ucitali iz fajla }    nalazi: boolean; { kada proveravamo da li je neka zemlja vec ucitana } pocetak glavnog programa    dodeli promeljivoj datoteka naziv 'olimpijada.dat';    otvori datoteku za pisanje;    pitaj korisnika da unese ime i ucitaj(podaci.ime);    dokle god je podaci.ime razlicito od 'kraj' radi    pocetak       pitaj za godinu i ucitaj(podaci.godina);       pitaj za zemlju i ucitaj(podaci.zemlja);       pitaj za poene i ucitaj(podaci.poeni);       pitaj za ime i ucitaj(podaci.ime);    kraj;    zatvori datoteku;    otvori datoteku za citanje;    postavi ucitano na 0 i broj na 0;     dokle god nije kraj fajla(datoteka) radi     pocetak         ucitaj podatke;         ako su podaci.poeni veci od 100 onda               ispisi podaci.ime i podaci.zemlja;         povecaj ucitano za 1;         postavi nalazi na false;         { sada cemo da prodjemo kroz petlju da bi videli da li se podaci.zemlja stvarno ne nalazi u nizu ucitnih zemalja. ako se ne nalazi onda cemo da povecamo broj (zemalja) za 1 i upisacemo tu zemlju u niz }                 pusti ciklus da vrti brojac 'i' od 1 do broj         pocetak             ako su podaci.zemlja = zemlje[i] onda             pocetak                   postavi nalazi na true;                   nasilno prekini ciklus;             kraj;          kraj;                   ako je nalazi = false onda         pocetak                povecaj broj za 1;                postavi zemlje[ucitano] na podaci.zemlja;         kraj;     kraj;    zatvori fajl;    ispisi broj razlicitih zemalja; kraj.

Mnogo dobar tekst o radu sa datotekama: http://suetf.org/materijali/oo1p1/Programiranje1-zadaci(datoteke).pdf

EDIT: Ispravio gresku u programu



offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Znam da svi vole rešene zadatke, pa evo izvoli Smile

https://www.mycity.rs/must-login.png

Ko je trenutno na forumu
 

Ukupno su 830 korisnika na forumu :: 2 registrovanih, 2 sakrivenih i 826 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: branko7, Tila Painen