cHJvZ3JhbSBUYXNjaGVucmVjaG5lcjsKCnZhcgogIHphaGwxLCB6YWhsMiwgZXJnZWJuaXM6IHJlYWw7CiAgb3AsIHdlaXRlcjogY2hhcjsKCmJlZ2luCiAgcmVwZWF0CiAgICB3cml0ZSgnRXJzdGUgWmFobDogJyk7CiAgICByZWFkbG4oemFobDEpOwoKICAgIHdyaXRlKCdad2VpdGUgWmFobDogJyk7CiAgICByZWFkbG4oemFobDIpOwoKICAgIHdyaXRlKCdvcCAoKywgLSwgKiwgLyk6ICcpOwogICAgcmVhZGxuKG9wKTsKCiAgICBjYXNlIG9wIG9mCiAgICAgICcrJzogZXJnZWJuaXMgOj0gemFobDEgKyB6YWhsMjsKICAgICAgJy0nOiBlcmdlYm5pcyA6PSB6YWhsMSAtIHphaGwyOwogICAgICAnKic6IGVyZ2VibmlzIDo9IHphaGwxICogemFobDI7CiAgICAgICcvJzogaWYgemFobDIgJmx0OyZndDsgMCB0aGVuCiAgICAgICAgICAgICAgZXJnZWJuaXMgOj0gemFobDEgLyB6YWhsMgogICAgICAgICAgIGVsc2UKICAgICAgICAgICBiZWdpbgogICAgICAgICAgICAgd3JpdGVsbignRmVobGVyOiBEaXZpc2lvbiBkdXJjaCAwIScpOwogICAgICAgICAgICAgZXJnZWJuaXMgOj0gMDsKICAgICAgICAgICBlbmQ7CiAgICBlbHNlCiAgICAgIHdyaXRlbG4oJ1VuZ3VlbHRpZ2VyIE9wZXJhdG9yIScpOwogICAgICBlcmdlYm5pcyA6PSAwOwogICAgZW5kOwoKICAgIHdyaXRlbG4oJ0VyZ2VibmlzOiAnLCBlcmdlYm5pczowOjIpOwogICAgd3JpdGVsbjsKCiAgICB3cml0ZSgnTm9jaCBlaW5tYWw/IChKL04pOiAnKTsKICAgIHJlYWRsbih3ZWl0ZXIpOwoKICB1bnRpbCBVcENhc2Uod2VpdGVyKSA9ICdOJzsKCiAgd3JpdGVsbignUHJvZ3JhbW0gYmVlbmRldC4nKTsKZW5kLg==
program Taschenrechner;
var
zahl1, zahl2, ergebnis: real;
op, weiter: char;
begin
repeat
write('Erste Zahl: ');
readln(zahl1);
write('Zweite Zahl: ');
readln(zahl2);
write('op (+, -, *, /): ');
readln(op);
case op of
'+': ergebnis := zahl1 + zahl2;
'-': ergebnis := zahl1 - zahl2;
'*': ergebnis := zahl1 * zahl2;
'/': if zahl2 <> 0 then
ergebnis := zahl1 / zahl2
else
begin
writeln('Fehler: Division durch 0!');
ergebnis := 0;
end;
else
writeln('Ungueltiger Operator!');
ergebnis := 0;
end;
writeln('Ergebnis: ', ergebnis:0:2);
writeln;
write('Noch einmal? (J/N): ');
readln(weiter);
until UpCase(weiter) = 'N';
writeln('Programm beendet.');
end.