从程序重新启动Cobol
我有一个小问题 我用cobol写了一个计算器,但我不是那么专业 我给你这里的代码:从程序重新启动Cobol,cobol,gnucobol,Cobol,Gnucobol,我有一个小问题 我用cobol写了一个计算器,但我不是那么专业 我给你这里的代码: DISPLAY "CALCOLATRICE". DISPLAY "ATTENZIONE, IL RISULTATO NON HA SEGNI!". DISPLAY "CHE VUOI FARE?". DISPLAY "1 ADDIZIONE". DISPLAY "2 SOTTRAZIONE". DISPLAY "3 MOLTIPL
DISPLAY "CALCOLATRICE".
DISPLAY "ATTENZIONE, IL RISULTATO NON HA SEGNI!".
DISPLAY "CHE VUOI FARE?".
DISPLAY "1 ADDIZIONE".
DISPLAY "2 SOTTRAZIONE".
DISPLAY "3 MOLTIPLICAZIONE".
DISPLAY "4 DIVISIONE".
DISPLAY "5 ESCI"
ACCEPT INPUT1
IF INPUT1 = 5
DISPLAY "OK, BUON LAVORO :)"
STOP RUN
END-IF.
IF INPUT1 = 1
DISPLAY "PRIMO NUMERO"
ACCEPT A
DISPLAY "SECONDO NUMERO"
ACCEPT B
COMPUTE C= A + B
DISPLAY "Computing"
DISPLAY "Computing."
DISPLAY "Computing.."
DISPLAY "Computing..."
DISPLAY "Computing...."
DISPLAY "Computing....."
DISPLAY "Computing......"
DISPLAY A "+" B " FA..."
DISPLAY C
ELSE
IF INPUT1 = 2
DISPLAY "PRIMO NUMERO"
ACCEPT A
DISPLAY "SECONDO NUMERO"
ACCEPT B
DISPLAY "Computing"
DISPLAY "Computing."
DISPLAY "Computing.."
DISPLAY "Computing..."
DISPLAY "Computing...."
DISPLAY "Computing....."
DISPLAY "Computing......"
DISPLAY A "-" B " FA..."
COMPUTE C= A - B
DISPLAY C
ELSE
IF INPUT1 = 3
DISPLAY "PRIMO NUMERO"
ACCEPT A
DISPLAY "SECONDO NUMERO"
ACCEPT B
COMPUTE C= A * B
DISPLAY "Computing"
DISPLAY "Computing."
DISPLAY "Computing.."
DISPLAY "Computing..."
DISPLAY "Computing...."
DISPLAY "Computing....."
DISPLAY "Computing......"
DISPLAY A "x" B " FA..."
DISPLAY C
ELSE
IF INPUT1 = 4
DISPLAY "PRIMO NUMERO"
ACCEPT A
DISPLAY "SECONDO NUMERO"
ACCEPT B
COMPUTE C= A / B
DISPLAY "Computing."
DISPLAY "Computing.."
DISPLAY "Computing..."
DISPLAY "Computing...."
DISPLAY "Computing....."
DISPLAY "Computing......"
DISPLAY A ":" B " FA..."
DISPLAY C
END-IF
END-IF
END-IF
END-IF.
STOP RUN.
现在,我想给你一个信息,说“你想做其他的操作吗?”如果答案是肯定的,它会回到开头,如果你说不,它会回到结尾。
如果你能告诉我怎么做,但如果可以的话,不要用段落。代码是否正确?大纲:
MOVE 'Y' TO do_work
PERFORM UNTIL do_work <> 'Y'
display menu
get response
EVALUATE response
WHEN reponse = 5
MOVE 'N' to do_work
/* other response processing */
END-PERFORM
GOBACK.
移动“Y”来做工作
执行直到“Y”开始工作
显示菜单
得到回应
评估反应
当响应=5时
搬家去做你的工作
/*其他响应处理*/
末端执行
戈巴克。
现在,我想给你一个信息,说“你想做其他的操作吗?”如果答案是肯定的,它会回到开头,如果你说不,它会回到结尾。如果你能告诉我怎么做,但如果可以的话,不要用段落。能给我正确的密码吗
我把If改为WHEN,让它更像Cobol
DATA DIVISION.
WORKING-STORAGE SECTION.
01 INPUT1 PIC 9.
01 A PIC 9(4).
01 B PIC 9(4).
01 C PIC 9(4).
01 Q PIC X VALUE "N".
PROCEDURE DIVISION.
PERFORM WITH TEST AFTER UNTIL INPUT1 = 5 OR Q = "N" OR "n"
DISPLAY "CALCOLATRICE"
DISPLAY "ATTENZIONE, IL RISULTATO NON HA SEGNI!"
DISPLAY "CHE VUOI FARE?"
DISPLAY "1 ADDIZIONE"
DISPLAY "2 SOTTRAZIONE"
DISPLAY "3 MOLTIPLICAZIONE"
DISPLAY "4 DIVISIONE"
DISPLAY "5 ESCI"
ACCEPT INPUT1
EVALUATE INPUT1
WHEN 1
DISPLAY "PRIMO NUMERO"
ACCEPT A
DISPLAY "SECONDO NUMERO"
ACCEPT B
COMPUTE C= A + B
DISPLAY "Computing"
DISPLAY "Computing."
DISPLAY "Computing.."
DISPLAY "Computing..."
DISPLAY "Computing...."
DISPLAY "Computing....."
DISPLAY "Computing......"
DISPLAY A "+" B " FA..."
DISPLAY C
WHEN 2
DISPLAY "PRIMO NUMERO"
ACCEPT A
DISPLAY "SECONDO NUMERO"
ACCEPT B
DISPLAY "Computing"
DISPLAY "Computing."
DISPLAY "Computing.."
DISPLAY "Computing..."
DISPLAY "Computing...."
DISPLAY "Computing....."
DISPLAY "Computing......"
DISPLAY A "-" B " FA..."
COMPUTE C= A - B
DISPLAY C
WHEN 3
DISPLAY "PRIMO NUMERO"
ACCEPT A
DISPLAY "SECONDO NUMERO"
ACCEPT B
COMPUTE C= A * B
DISPLAY "Computing"
DISPLAY "Computing."
DISPLAY "Computing.."
DISPLAY "Computing..."
DISPLAY "Computing...."
DISPLAY "Computing....."
DISPLAY "Computing......"
DISPLAY A "x" B " FA..."
DISPLAY C
WHEN 4
DISPLAY "PRIMO NUMERO"
ACCEPT A
DISPLAY "SECONDO NUMERO"
ACCEPT B
COMPUTE C= A / B
DISPLAY "Computing."
DISPLAY "Computing.."
DISPLAY "Computing..."
DISPLAY "Computing...."
DISPLAY "Computing....."
DISPLAY "Computing......"
DISPLAY A ":" B " FA..."
DISPLAY C
WHEN 5
DISPLAY "OK, BUON LAVORO :)"
END-EVALUATE
IF INPUT1 NOT = 5
DISPLAY "Do you want to do other operations?"
ACCEPT Q
END-IF
END-PERFORM
STOP RUN
.