Ich versuche, eine Art von Caesar Cipher in Cobol zu programmieren. Aber irgendwie bekomme ich die folgende Compiler-Fehler:Funktion ord funktioniert nur manchmal, aber manchmal nicht
Numeric function "INTEGER FUNCTION ORD" was not allowed in this context.
Dieser Fehler wird hier gefeuert (beide Linien)
000048 MOVE FUNCTION ORD("A") TO a
000049 display function ord("A")
Aber NICHT hier
000054 MOVE FUNCTION CHAR(FUNCTION MOD(
000055 FUNCTION ORD(outstring (i:1))
000056 - a + offset, 26) + a)
000057 TO outstring (i:1)
i
ist die Position der outstring
wir betrachten. a
ist, den Wert von "a"
oder von "A"
erforderlich sicherzustellen, dass wir in den 26 Buchstaben, definiert als
000018 03 a pic S9(3).
Wo ist der Unterschied zu bleiben? Warum funktioniert die zweite und die erste nicht?
Nur um zu sagen: Ich war nicht in der Lage, das Problem zu lösen, da wir nicht ascii, sondern eine andere, wo a bis z sind nicht in Ordnung, aber mit Lücken. – inetphantom