Einführung
in die imperative Programmierung
WS 2014/15
Minimum von 2 Zahlen
program Minimum (input, output);
{berechnet aus zwei Eingaben das Minimum und gibt es aus}
uses crt;
var
{Eingabewerte}
Zahl1,
Zahl2: integer;
{Ergebnis}
Min : integer;
BEGIN
{Eingabe der Zahlen}
writeln('Geben Sie zwei Zahlen ein. Das Programm berechnet das Minimum.');
writeln('erste Zahl eingeben');
readln(Zahl1);
writeln('zweite Zahl eingeben');
readln(Zahl2);
{Minimum berechnen}
if Zahl1 < Zahl2 then
Min := Zahl1
else
Min := Zahl2;
{Ausgabe}
writeln('Minimum: ', Min);
END.
Fehler bei falschen Typen
program Typen (input, output);
{berechnet aus zwei Eingaben das Minimum und gibt es aus}
uses crt;
var
{Eingabewerte}
Zahl1,
Zahl2: integer;
{Ergebnis}
Min : integer;
Zahl3: integer;
BEGIN
{Eingabe der Zahlen}
writeln('Geben Sie zwei Zahlen ein. Das Programm berechnet das Minimum.');
writeln('erste Zahl eingeben');
readln(Zahl1);
writeln('zweite Zahl eingeben');
readln(Zahl2);
{Minimum berechnen}
if Zahl1 < Zahl2 then
Min := Zahl1
else
Min := Zahl2;
{Ausgabe}
writeln('Minimum: ', Min);
writeln(Zahl1 div Zahl2);
Zahl3 := (Zahl1 / Zahl2);
writeln( Zahl3)
END.
Strings und Aufzählungstypen
program Worte (input,output);
uses crt;
const
PI = 3.14159;
GRUSS = 'Hallo';
type
tGeschlecht = (maennlich, weiblich);
var
Wort1,
Wort2 : string;
Geschlecht : tGeschlecht;
b: boolean;
i: integer;
BEGIN
{readln(Wort1);
readln(Wort2);
if Wort1 > Wort2 then
begin
writeln(Wort1 , ' größer als ', Wort2);
writeln(Wort2, ' ', Wort1);
end
else
if Wort2 > Wort1 then
writeln(Wort2 , ' größer als ', Wort1)
else writeln(Wort1, ' gleich ', Wort2);
readln(Geschlecht);
writeln(Geschlecht);}
i:=7;
b:= true;
b := (i > 0) or b = false;
END.
Minimum von 3 Zahlen
program MinVon3;
uses crt;
var
Zahl1,
Zahl2,
Zahl3,
Minimum: real;
BEGIN
{
readln(Zahl1);
readln(Zahl2);
readln(Zahl3);
Minimum := Zahl1;
if (Zahl2 < Minimum) then
Minimum := Zahl2;
if (Zahl3 < Minimum) then
Minimum := Zahl3;
writeln('Minimum: ', Minimum:10:5);
Zahl1 := sqrt(25.0);
Zahl2:= sqr(sqrt(2)) +3;
}
Zahl1 := 1.0;
Zahl2 := 0.5;
Zahl1 := Zahl1 - 0.1; { = 0.9 }
Zahl1 := Zahl1 - 0.1; { = 0.8 }
Zahl1 := Zahl1 - 0.1; { = 0.7 }
Zahl1 := Zahl1 - 0.1; { = 0.6 }
Zahl1 := Zahl1 - 0.1; { = 0.5 }
if abs(Zahl1-Zahl2) < 0.00001 then
writeln('gleich')
else
writeln('ungleich z1=', Zahl1:5:2, ' z2=', Zahl2:5:2);
END.
Betrag in Münzen herausgeben
program Wechseln;
{$R+}
uses crt;
type
tCent = 1..99;
tAnzahl = 0..2;
var
Betrag : tCent;
Cent1,
Cent2,
Cent5,
Cent10,
Cent20,
Cent50: tAnzahl;
BEGIN
readln(Betrag);
Cent50 := Betrag div 50;
Betrag := Betrag mod 50;
Cent20 := Betrag div 20;
Betrag := Betrag mod 20;
Cent10 := Betrag div 10;
Betrag := Betrag mod 10;
Cent5 := Betrag div 5;
Betrag := Betrag mod 5;
Cent2 := Betrag div 2;
Betrag := Betrag mod 2;
Cent1 := Betrag;
writeln(Cent50, Cent20, Cent10, Cent5, Cent2, Cent1);
END.