předchozí návrat do menu uložit zdrojový kód následující

Cvičení 15

Rozdělte program z cvičení 7 na několik částí užitím vlastních procedur pro zadání rozměrů a výpočet objemu nádrží jednotlivých geometrických tvarů. Redukujte počet proměnných hlavního programu ve prospěch vnitřních proměnných jednotlivých procedur.


program ukol15;
uses crt;
const spotreba=10;
var n:integer;
    objem:real;

procedure kvadr;
 var a,b,c:real;
 begin
  writeln('  K V A D R');
  write('Zadejte prvni stranu podstavy [m]: ');
  readln(a);
  write('Zadejte druhou stranu podstavy [m]: ');
  readln(b);
  write('Zadejte vysku kvadru [m]: ');
  readln(c);
  objem:=a*b*c;
 end;

procedure valec;
 var d,v:real;
 begin
  writeln('  V A L E C');
  write('Zadejte prumer podstavy [m]: ');
  readln(d);
  write('Zadejte vysku valce [m]: ');
  readln(v);
  objem:=pi*sqr(d)/4*v;
 end;

procedure koule;
 var d:real;
 begin
  writeln('  K O U L E');
  write('Zadejte prumer nadrze v metrech [m]: ');
  readln(d);
  objem:=1/6*pi*d*d*d;
 end;

begin { --------   H L A V N I   P R O G R A M ---------}
   writeln('Vyberte tvar nadrze:');   {menu}
   writeln('Kvadrova nadrz - "K"');
   writeln('Valcova  nadrz - "V"');
   writeln('Kulova   nadrz - "O"');
   writeln('Konec - ostatni klavesy');
   writeln('-----------------------');
   write('Vase volba?');

   case UpCase(ReadKey) of {prevede na velka pismena}
    'K':kvadr;
    'V':valec;
    'O':koule;
    else exit;  {stisknuti ostatnich klaves => ukonceni programu}
   end;

   write('Zadejte pocet osadniku: ');
   readln(n);
   writeln('-------------------------------------');

   writeln('Nadrz o objemu ',objem:2:2,' metru krychlovych,');
   writeln('tedy ',(objem*1000):2:0,' litru, vystaci ',n,' osadnikum');
   write('na ',((objem*1000)/(n*spotreba)):0:0,' dnu');
   writeln(' pri spotrebe ',spotreba,' litru na osobu a den');
end.

Zpět na: Lekce 7


předchozí návrat do menu uložit zdrojový kód následující
Klíčová slova v Pascal