Wenn man kürzen kann ist Addition und Subtraktion ein Kinderspiel, man muss nur die Zähler mit dem Nenner des anderen Multiplizieren und die beiden Nenner und das ganze addieren/subtrahieren. Für den Rest gibt es ja kürzen, ist ein Vierzeiler.
Zum Teilen durch 0: Ich weiß sehrwohl das Delphi Exceptions hat und die auch wunderschöne MessaBoxen erzeugen. Wenn man die aber nicht behandelt, springt Delphi autmomatisch aus der Prozedur raus. Es ist als undefiniert was in den Registern steht und damit auch das Funktionsergebnis einer Funktion. Ich bin deswegen kein Freund von unbehandelten Exceptions. Es beendet also nicht wirklich sinnvoll, viel eher macht er in einem undefinierten Zustand weiter.
Ich bin mir nicht sicher ob es Pascal ist, ich würde aber darauf tippen und wenn dem so ist hab ich noch einen 5. Hinweis: Es fehlt das benutzen der Unit crt.
Wärs Delphi würde es sich um einen Konsolenprogramm handeln (wo die Fehlerbehandlung schon etwas anders aussieht) und Delphi hätte eine Compilerdirektive {$APPTYPE CONSOLE} eingefügt die ich aber auch nirgends sehen kann.
Zur Delphi-Fehlerbehandlung in der Konsole: Nimm dieses Programm compile es mit deinem Delphi, und dann schließe Delphi und starte die .exe selber (also Doppelklick oder aus der Konsole), du wirst sehen da ists Essig mit der Fehlermeldung:
|
Delphi Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
a, b: Integer;
m: Real;
begin
a:=1;
b:=0;
m:=a/b;
writeln(m);
end.
|