プログラミング言語 COBOL のコンパイラに問題があります。プログラム「OpenCobolIDE」(GnuCOBOL 1.1 Mingw)を使用しています。
まず、サンプルプログラムのコードです。
IDENTIFICATION DIVISION.
PROGRAM-ID. HelloWorld.
DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
01 name pic x(32).
PROCEDURE DIVISION.
beginn section.
DISPLAY "What is your Name?: " with no advancing.
accept name.
DISPLAY "Your Name: ",name .
STOP RUN.
END PROGRAM HelloWorld.
私の名前「Albert」を入力した後、コンソールは「Your Name: Albert」というメッセージを送り返しません。コンソールは「アルバート」が空になった後です。しかし、私の名前は 6 文字であるため、文字列名の長さを 6 に設定すると、プログラムは正しく動作し、コンソールには「Your Name: Albert」と表示されます。
これに加えて、節with no advancing
が正しく機能しません。このコマンドを使用すると、コンソールに「What is your Name?」というメッセージが出力されず、行がスキップされ、最初に自分の名前を入力する必要があり、名前を入力した後にコンソールに「What is your Name?: Albert」と表示されます。しかし、コンパイルされたプログラムの .exe では、コマンド ラインwith no advancing
は正しく機能します。
なぜそうなるのですか、どうすればそれを修復できますか?