[ danilche123 @ 30.12.2008. 16:07 ] @
| Pozdrav. Zadatak je sledeci, treba napisati program koji racuna prosek ocena. Predmeti idu redom:matematika, srpski...
....begin
write ('Matematika ');
read (mat);
if mat>5 then begin write ('Ocena iz matematike ne moze biti veca od 5, upisite je ponovo: '); read (mat);
if mat>5 then write ('Ocena iz matematike ne moze biti veca od 5, upisite je ponovo:') ; read (mat);
if mat>5 then write ('Ocena iz matematike ne moze biti veca od 5, upisite je ponovo:') ; read (mat);
if mat>5 then write ('Ocena iz matematike ne moze biti veca od 5, upisite je ponovo:') ; read (mat); end;
if mat<2 then write ('Tvoj uspeh je nedovoljan, ocena ne sme biti jedinica');
write ('Srpski ');
read (srp);....
E sad problem je u tome sto kad se upise jedinica on posle ovoga, da ocena ne sme da bude jedinica i da je uspeh nedovoljan pita za ocenu iz srpskog. Sta treba da se uradi da ako je ocena iz matematike manja od dvojke program ne ide dalje? |
[ Picsel @ 30.12.2008. 17:09 ] @
Code: halt;
Ovako prekidas program.
Znaci
if mat<2 then halt;
[ danilche123 @ 30.12.2008. 17:26 ] @
Hvala. Zanima me jos nesto. Ima li nekog drugog nacina da se ogranici da ne moze da upise vise od 5, posto ovako ako upise 6 vise od 3-4 puta on nastavlja dalje...
[ savkic @ 30.12.2008. 17:34 ] @
Ako želiš da se program "blokira" sve dok se ne unese ispravna ocena, jednostavno se vrtiš u petlji, ovako otprilike:
Code:
var
Ocena: Integer;
begin
repeat
Read(Ocena);
if Ocena < 2 then
WriteLn('Ocena ne moze biti manja od 2')
else
if Ocena > 5 then
WriteLn('Ocena ne moze biti veca od 5')
else
Break;
until False;
end;
[ LSDCracker @ 06.01.2009. 12:26 ] @
Zar nije bilo bolje ovako?
Code:
program brrrr;
var ocena:integer;
begin
repeat
read(ocena);
if ocena>5 then writeln('Ocena ne sme biti veca od 5');
if ocena<2 then writeln('Ocena ne moze biti manja od 2');
until (ocena>=2) and (ocena<=5);
{...}
end.
Pozdrav.
[ danilche123 @ 11.03.2009. 13:33 ] @
Imam jos jedno pitanje pa bih ga ovde postavio da ne otvaram novu temu. Kako moze i da li moze uopste da se namesti da odredjenu operaciju uradi za neko vreme, a ne sve odmah? Primer, da sabere 2 broja a rezultat da ispise za 5 sekundi? Unapred hvala.
[ savkic @ 11.03.2009. 14:19 ] @
> Kako moze i da li moze uopste da se namesti da odredjenu operaciju uradi za neko vreme, a ne sve odmah? Primer, da sabere 2 broja a rezultat
> da ispise za 5 sekundi? Unapred hvala.
Ako radiš u Delphiu možeš koristiti TTimer sa intervalom od 5000ms. Ako radiš u čistom paskalu napravi podrutinu koja će na početku učitati tekuće vreme i vrteti se u petlji dok ne istekne željeno vreme.
[ danilche123 @ 11.03.2009. 14:39 ] @
Jel mozes da mi das primer za to? Sta je to podrutina?
[ savkic @ 11.03.2009. 16:21 ] @
> Jel mozes da mi das primer za to?
Bilo je dosta primera za upotrebu TTimera, ako pitaš za čist pascal, ne sećam se koje funkcije se koriste za dobijanje vremena.
> Sta je to podrutina?
Pomoćna funkcija ili procedura koja se poziva iz glavnog dela i obavlja određeni zadatak.
[ Picsel @ 11.03.2009. 16:25 ] @
Ili ako ispisujes na ekran, onda ovako... primer:
Code: uses crt;
var a,b,c:integer;
begin
write('Unesi prvi broj: ');
readln(a);
write('Unesi drugi broj: ');
readln(b);
c:=a+b;
delay(5000);
writeln(c);
end.
[ danilche123 @ 13.03.2009. 12:42 ] @
Gresku mi prijavljuje kod tog Delay-a...
[ Picsel @ 13.03.2009. 15:53 ] @
Koju gresku?
Da li si na pocetku programa stavio
Code: uses crt;
[ danilche123 @ 14.03.2009. 16:03 ] @
wincrt; stoji, a kad stavim crt; prijavljuje gresku.
[ Nikolavlasotince @ 14.03.2009. 23:39 ] @
Verovatno koristis TPW 1.5. Bolje idi na freepascal.org i skini Free Pascal. Mnogo je bolji od TPW-a, barem se meni tako cini...
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|