0
A
回答
1
对于数量非常有限的项目,简单的“交换排序”将会很好。使用带有OCCURS的表格,将数据放入表格中,然后继续传递表格,交换相邻的项目,直到表格过去不再有更改。
对于三个数字,您可能想要考虑类似这样的事情,这实际上并不是一种排序,但会给你你想要的顺序。
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NUM1 PIC 9.
01 NUM2 PIC 9.
01 NUM3 PIC 9.
01 SNUM1 PIC 9.
01 SNUM2 PIC 9.
01 SNUM3 PIC 9.
PROCEDURE DIVISION.
ACCEPT NUM1
ACCEPT NUM2
ACCEPT NUM3
COMPUTE SNUM1 = FUNCTION
MIN
(
NUM1
NUM2
NUM3
)
COMPUTE SNUM2 = FUNCTION
MEDIAN
(
NUM1
NUM2
NUM3
)
COMPUTE SNUM3 = FUNCTION
MAX
(
NUM1
NUM2
NUM3
)
DISPLAY
">"
SNUM1
"<"
DISPLAY
">"
SNUM2
"<"
DISPLAY
">"
SNUM3
"<"
GOBACK
.
有了这个在SYSIN(或无论你来自ACCEPT):
4
2
3
它会产生:
>2<
>3<
>4<
个人而言,我会去这样的事情:
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NUM1 PIC 9.
01 NUM2 PIC 9.
01 NUM3 PIC 9.
01 SNUM1 PIC 9.
01 SNUM2 PIC 9.
01 SNUM3 PIC 9.
PROCEDURE DIVISION.
ACCEPT NUM1
ACCEPT NUM2
ACCEPT NUM3
IF (NUM2
LESS THAN NUM1)
MOVE NUM2 TO SNUM1
MOVE NUM1 TO SNUM2
ELSE
MOVE NUM2 TO SNUM1
MOVE NUM1 TO SNUM2
END-IF
EVALUATE TRUE
WHEN NUM3
LESS THAN SNUM1
MOVE SNUM2 TO SNUM3
MOVE SNUM1 TO SNUM2
MOVE NUM3 TO SNUM1
WHEN NUM3
LESS THAN SNUM2
MOVE SNUM2 TO SNUM3
MOVE NUM3 TO SNUM2
WHEN OTHER
MOVE NUM3 TO SNUM3
END-EVALUATE
DISPLAY
">"
SNUM1
"<"
DISPLAY
">"
SNUM2
"<"
DISPLAY
">"
SNUM3
"<"
GOBACK
.
决定冷杉的顺序两个数字,然后找出第三个应该去的地方。这实际上是一种组合的交换/插入排序:-)
当然,结果与上面相同。
COBOL确实有一个SORT动词,如果这是你应该使用的,但它对三个项目是“过度杀伤”。
相关问题
- 1. DirectoryInfo.EnumerateDirectories是否对项目进行排序?
- 2. 项目进行排序算
- 3. MYSQL对组中的项目进行排序然后对它们进行排序
- 4. 从plist按字母顺序对项目进行排序
- 5. 如何对列表框中的项目进行升序排序
- 6. 项目进行排序,价格等级
- 7. 如何对DropDownButton项进行排序?
- 8. 在Python中对变量进行排序?
- 9. 如何根据ElasticSearch中的项目数量对搜索结果进行排序?
- 10. 在列表视图中对分组项目进行排序
- 11. python随机地对相同值的项目进行排序
- 12. 对同一表中的项目进行排序
- 13. 如何在ToolStripItemCollection中对项目进行排序?
- 14. 如何在Visual Studio 2008中对项目进行排序?
- 15. 在Python 2.3中按项目频率对列表进行排序
- 16. 如何对Java中ArrayList中的某些项目进行排序?
- 17. C++按属性对项目进行排序
- 18. 如何在MFC中CListCtrl中对项目进行排序?
- 19. 如何使用Qt.UserRole对Qt QListview中的项目进行排序
- 20. 如何在列表框中对项目进行排序
- 21. 如何使用ListView中的类对项目进行排序?
- 22. 如何对节点orm中的项目进行排序find
- 23. Wicket - 在调色板中对项目进行排序
- 24. JavaScript按月对项目列表进行排序
- 25. 在图库中对花式框项目进行重新排序
- 26. 如何在setAdapter之前对BaseAdapter中的项目进行排序?
- 27. 如何在推入新项目时对字典进行排序?
- 28. 如何对数组中的项目进行排序
- 29. 如何在ObjectListView中对项目进行排序?
- 30. 按特定属性对项目进行排序knockout.js
如果您显示代码并描述您遇到的问题,我们可能会提供很多帮助。 (另外,是否有你用ibm-midrange和cobol85标记的原因?他们似乎没有连接好。) – user2338816
我没有代码,我正在计划这个想法。 这很简单(我猜)有人介绍3个数字(如3 7和4)和程序按升序排序(结果:3 4 7) 问题是我该如何做到这一点,让COBOL得到了函数那还是什么? –