Evo ovako drage kolege, da vam svima prvo stavim jedan zadatak kojeg sam dobio iz informatike za riješiti :
2. Ivica mora naučiti za domadu zadadu naučiti pjesmicu napamet. Napiši program koji de unositi broj riječi u pjesmi i broj riječi u jednom stihu. Ivica zna da mu treba 2 minute po stihu ako pjesmica ima manje od 4 stiha, 3 minute po stihu ako pjesma ima između 4 i 8 stihova te 4 minute po stihu ako pjesma ima više od 8 stihova. Program mora izračunati i ispisati koliko de vremena Ivica učiti pjesmicu napamet. (15 bodova)
Primjer 1:
ULAZ
25
5
IZLAZ
15 minuta
Primjer 2:
ULAZ
83
10
IZLAZ
36 minuta
E sad ovako drage kolege, ja sam to ovako riješio :
program ivica;
var broj_rijeci_u_pjesmi, broj_rijeci_u_stihu, rez, broj_stihova_u_pjesmi, slobodne_rijeci:integer;
begin
readln(broj_rijeci_u_pjesmi);
readln(broj_rijeci_u_stihu);
broj_stihova_u_pjesmi := broj_rijeci_u_pjesmi div broj_rijeci_u_stihu;
slobodne_rijeci := broj_rijeci_u_pjesmi mod broj_rijeci_u_stihu;
if broj_stihova_u_pjesmi < 4 then begin
rez := (broj_stihova_u_pjesmi * 2) + (slobodne_rijeci * 4);
end;
if (broj_stihova_u_pjesmi >= 4) and (broj_stihova_u_pjesmi <= 8) then begin
rez := (broj_stihova_u_pjesmi * 3) + (slobodne_rijeci * 4);
end;
if broj_stihova_u_pjesmi > 8 then begin
rez := (broj_stihova_u_pjesmi * 4) + (slobodne_rijeci * 4);
end;
writeln(rez, ' minuta');
readln;
end.
E sada, u čemu je fora drage moje kolege. Ako ste pročitali zadatak (izuzev gramatičkih pogrešaka profesora), kažem profesoru : "Pa dobro, kako da mi program izbaci 36, ako bi po zadatku u 2. primjeru trebao izbaciti 24 minute?". Kaže on meni : "Test primjeri su dobri. Tebi očito ne valja način razmišljanja."
Ja ono OK, uvijek su mi ti zadaci išli bez problema, ali gledam kako sad ovo riješiti. I evo kod iznad, to je moje rješenje.
Kasnije sam saznao da su se te 3 slobodne riječi trebale tretirati kao novi stih, pa bi bilo 9 * 4 = 36... Jedino što ja želim dokazati ovdje jeste da je profesor u zadatku ili kada sam ga pitao trebao napomenuti da ako broj stihova nije cjelobrojna vrijednost, da se onda pravi novi stih.
Jel gledajte, što ako bi unio recimo 84 i 10. To bi moglo biti 9 stihova, ali i 10 (osam stihova po 10 riječi i dva stiha po 2 riječi).
Samo želim čuti vaše mišljenje, jer ja mislim da zadatak nije bio dobro definiran te na ja ni na koju foru nisam mogao iz zadatka iščitati da se "slobodne riječi" tretiraju kao novi stih...
Unaprijed hvala!