Die DIVIDE-Anweisung

Die DIVIDE-Anweisung kann in drei verschiedenen Formaten verwendet werden.

Format 1:
Hier wird der Dividend durch den Devisor dividiert und das Ergebnis(der Quotient) dieser Division in dem Datenfeld abgelegt, das den Dividenden gebildet hat.
Beispiel:
DIVIDE Secunde INTO Meter.


Wenn Meter(Dividend)=60 und Secunde(Devisor)=10, dann lautet die Rechnung:
60(=Meter) / 10(=Secunde) = 6(=neuer Wert von Meter)


Würde man hier statt der DEVIDE-Anweisung die COMPUTE-Anweisung verwenden, so würde die Anweisung lauten:
COMPUTE Meter = Meter / Secunde.



Format 2:
Im zweiten Format kann man sich entscheiden, ob man den ersten Bezeichner nach DIVIDE als Dividenden oder als Divisor festlegen will. Im ersten Fall muß man das Wort BY und im zweiten das Wort INTO benutzen. Das Ergebnis wird im Bezeichner der auf GIVING folgt abgelegt.
Beispiel 1:
DIVIDE Meter BY Secunde GIVING Geschwindigkeit.


Wenn hier wiederrum Meter(Dividend)=60 und Secunde(Devisor)=10 sind, dann lautet die Rechnung:
60(=Meter) / 10(=Secunde) = 6(=Geschwindigkeit)


Die entsprechende COMPUTE-Anweisung würde demnach lauten:
COMPUTE Geschwindigkeit = Meter / Secunde.



Beispiel 2:
DIVIDE Meter INTO Secunde GIVING Strecke.


In diesem Falle lautet die Rechnung bei gleichen Wetren (nur daß Secunde diesmal der Dividend und Meter der Devisor ist):
10(=Secunde) / 60(=Meter) = 0,6(=Strecke)


Würde COMPUTE verwendet sähe die Anweisung folgendermaßen aus:
COMPUTE Strecke = Secunde / Meter.



Format 3:
Dieses Format dient dazu, den Rest einer Division zu ermitteln. Dieser Rest wird im Bezeichner der auf das Wort REMAINDER folgt abgelegt.
Beispiel 3:
DIVIDE Bier BY Glasinhalt GIVING Glaeser REMAINDER Verschenkt.

Wenn Bier(Dividend)=1500 und Glasinhalt(Divisor)=200 sind, dann lautet die Rechnung:

1500(=Bier) / 200(=Glasinhalt) = 7(=Glaeser) Rest 100(=Verschenkt).


Das funktioniert jedoch nur, wenn Glaeser vorher mit PIC 9 definiert wurde. Cobol bildet den Rest nämlich aufgrund der PICTURE-Klausel des Quotienten.

Wäre Glaeser mit PIC 9V9 definiert worden, so sähe die Rechnung folgendermaßen aus:

1500(=Bier) / 200(=Glasinhalt) = 7,5(=Glaeser) Rest 0(=Verschenkt)


...