Anonymní profil Honza – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Honza – Programujte.comAnonymní profil Honza – Programujte.com

 

Příspěvky odeslané z IP adresy 217.194.170.–

Honza
Pascal › Závěrečná práce
12. 5. 2011   #141829

uz vim, dal jsem to pred end. a jede to ...

Honza
Pascal › Závěrečná práce
11. 5. 2011   #141807

No jasný, že před začátek MENU. Ale nevim, kam mám dát tu podmínku until...

Honza
Pascal › Závěrečná práce
11. 5. 2011   #141800

Zdravím vás :) ... Mám dělat závěrečnou práci. Zadání zní:
Vytvořte program s následující nabídkou:

a) Průměr známek

Vyhodnoťte klasifikaci z jedné písemné práce ve třídě. Je dán počet žáků a dále výsledná známka každého z žáků. Ošetřete zadání tak,
aby bylo možné zadat pouze známky v rozsahu <1;5>. Pro ostatní případy uživatele upozorněte např.: "Chybné zadání".
Určete počty žáků klasifikovaných jednotlivými známkami a průměr celé třídy.

b) Načtěte do pole N čísel. Vytvořte statistiku, kolikrát se opakují stejná čísla.

c) Ukončení Programu


Program mám napsany, ale jde mi o to, te kdyz zadam, ze chci jednicku, udela se program jedna, a pak zvolim ze ho nechci opakovat, tak bych chtel aby se miu to vratilo zase na to MENU... Jen nevim jak tam davat ty repeaty, a kam ty podminky, poradite?

program zaver;

uses wincrt;
type data = array [1..50] of integer;
var b,c:real;
pole,npole:array[0..500] of integer;
i,v,n,p1,p2,p3,p4,p5,h:integer;
a : data;
begin

Writeln('*********************************');
Writeln('********** M E N U **********');
Writeln('*********************************');
writeln;
writeln('1. Písemná práce');
Writeln('2. Pole');
writeln('3. Ukončit program');
Writeln;
repeat
Write('Zadejte číslo ');
readln(v);
IF ((v<>1) and (v<>2) and (v<>3)) then
writeln('Muzes zadat pouze cisla 1,2 nebo 3');
until ((v=1) or (v=2) or (v=3));
case v of 1:

begin
p1:=0; p2:=0; p3:=0; p4:=0; p5:=0;
repeat


Writeln('Tento program vyhodnotí písemnou práci ve třídě.');
writeln('Je dán počet žáku ve třídě a známka každého studenta.');
Writeln('Program poté vypíše počet žáku klasifikovaných jednotlivými známkami.');
writeln('Rovněž zjistí celkový průměr z celé třídy.');
writeln;

repeat
write('Zadejte počet žáku ve třídě ');
readln(n);
IF n<=0 then writeln('Zadal jsi špatné číslo, počet nemůže být nulový nebo zaporný.'); writeln;
until n>0;

For I:=1 to n do begin
repeat
write('Zadejte výslednou známku ',I,'. žáka '); readln(A[i]);
IF ((a[i]<>1) and (a[i] <>2) and (a[i] <>3) and (a[i] <>4) and (a[i] <>5))
then begin writeln('Chybné zadání, známku lze zadat v intervalu <1;5>.'); writeln; end;
until ((a[i]=1) or (a[i] =2) or (a[i] =3) or (a[i] =4) or (a[i] =5));
if a[i]=1 then p1:=p1+1;
if a[i]=2 then p2:=p2+1;
if a[i]=3 then p3:=p3+1;
if a[i]=4 then p4:=p4+1;
if a[i]=5 then p5:=p5+1;
end;
writeln;
writeln('************************************');
writeln('* *');
writeln('* Známku 1 dostalo celkem ',p1,' žáku *');
writeln('* Známku 2 dostalo celkem ',p2,' žáku *');
writeln('* Známku 3 dostalo celkem ',p3,' žáku *');
writeln('* Známku 4 dostalo celkem ',p4,' žáku *');
writeln('* Známku 5 dostalo celkem ',p5,' žáku *');
writeln('* *');
writeln('************************************');
writeln;
writeln('Celkový průměr známek ve třídě je ',((p1*1+p2*2+p3*3+p4*4+p5*5)/n):3:2);
writeln;
writeln('Pokud chcete ukoncit program Písemná Práce zmáčkněte 1');
writeln('Pokud zadáte libovolnou klávesu kromě 1, program Písemná Práce se restartuje');
write('Zadejte číslo ');
readln(b);
until b=1;
end;

2:
begin
repeat
Writeln('Načtěte do pole N čísel, program poté vypíše, kolikrát se dané číslo opakuje');
Writeln;
repeat
write('Zadejte počet prvků pole: '); {Zjisteni poctu prvku}
readln(N);
IF n <=0 then writeln('Zadat lze pouze čísla kladná nenulová čísla');
until n>0;
writeln;
for i:=0 to N-1 do begin {Nacitani hodnot do pole}
write('Zadejte ',i+1,'. číslo: ');
readln(pole[i]);
end;
for i:=0 to N-1 do inc(npole[pole[i]]); {Navysovani hodnot v novem poli}
writeln;
for i:=0 to 100 do begin {Vypis hodnot na nenulovych pozicich noveho pole}
if npole[i]>0 then writeln(i,' - ',npole[i],'x');
end;
writeln('Pokud chcete program Pole ukončit, zmáčkněte jedničku.');
writeln('Pokud zadáte jiné číslo než jedna, program se restartuje.');
write('Zadej číslo ');
readln(h);
until (h=1);
end;

3: writeln('konec programu');


end;
end.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý