求大佬解答,要数据部和过程部
cobol吧
全部回复
仅看楼主
level 2
桃jin_tao 楼主
求大佬解答,要数据部和过程部
2020年06月09日 08点06分 1
level 4
不那么标准的给你写了,写个大概意思不懂再问吧,写的细节不一定对,就是提供个思路,这题出的应该是不让你们用最大值和求和的函数吧
大体思路就是做10次循环,每次取个最大值打出来,取完的最大值赋个最小值,将每次取出最大值求和
data division.
01 WS-AREA.
03 ws-suject-group.
05 ws-suject PIC X(02) occurs 10.
03 ws-score-group.
05 ws-score pic s9(03) occurs 10.
03 ws-index-a pic 9(02) value 0.
03 ws-index-b pic 9(02) value 0.
03 n pic 9(02) value 0.
03 ws-score-high pic 9(02) value 0.
03 ws-sum pic 9(04) value 0.
procure division.
move 【10个课程名】 to ws-suject-group / 这个根据课程名入力规则传就行
move 【10个分数】 to ws-score-group
move ws-score(1) to ws-score-high
perform varying ws-index-b from 1 by 1 until WS-INDEX > 10
* 取最大值
perform varying ws-index-a from 1 by 1 until WS-INDEX > 10
if ws-score(ws-index) > ws-score-high
move ws-score(ws-index) to ws-score-high
move ws-index to n
end-if
end-perform
* 打印最大值
dispay ws-suject(n) ':' ws-score-high
compute ws-sum = ws-sum + ws-score-high
* 取出最大值的分数初始化最小值
move low-value to ws-suject(n)
end-perform.
*打印总成绩
display '总分为:’ ws-sum.
stop run.
2020年07月07日 03点07分 2
发表之后空格的格式没了,自己调一下吧[哈哈]
2020年07月07日 03点07分
不怎么常上贴吧,有问题加qq讨论吧 8657893
2020年07月07日 03点07分
1