KS3 计算机/数据抽象
外观
< KS3 计算机
计算机系统被构建来解决问题。前一章描述了将问题分解为子问题作为解决问题的必要步骤。这个过程会产生更小的子问题。每个子问题都必须被分解和定义为算法。由此引出了以下问题:如何描述每个问题,以便计算机能够理解它?
[这里需要插入图像]
One - imperative or procedural - approach of thinking like a computer scientist, or algorithmically, is to define a problem in terms of its data requirements. Consider the definition of a data processing system:
[这里需要插入图像]
根据以上定义,可以从数据的角度来解决计算问题:识别输入数据和输出数据,并开发处理输入数据的过程,以便产生输出数据。
在前一章中,您已将问题分解为子问题。现在,您需要识别每个子问题所需的 数据。
- 在空中交通管制系统中,一个子问题是防止飞机飞入彼此的航线。此子问题所需的 数据将包括:每架飞机的当前位置、移动方向和每架飞机的速度。
- 在计算机游戏系统中,一个子问题是在玩家完成目标时增加分数。此子问题所需的 数据将包括:一个标志完成目标的信号和当前分数。
穿衣问题的数据需求是什么?一个数据需求是衣柜的内容... 还有哪些呢?
烹饪晚餐问题的数据需求是什么?一个数据需求是冰箱的内容... 还有哪些呢?
一个简单的银行系统的数据需求是什么?该系统允许用户开户、销户,并跟踪账户的支出和存款。一个数据需求是账户持有人的姓名... 还有哪些呢?
考虑您最喜欢的游戏。该系统的数据需求是什么?
您能想到您想创建的应用程序吗?描述应用程序,并识别至少 5 个子组件。制作结构图。(您可能已经完成了这些任务。)现在,识别数据需求。
计算思维要求识别数据来解决给定的问题。数据以计算方式描述了问题。可以通过识别处理输入数据以实现目标结果的过程来找到给定问题的解决方案,这些结果将以输出数据的方式呈现。
系统中数据的使用可以表示为数据流图。研究这种技术,并为以上每个问题制作一个这样的图。了解面向对象编程 (OOP),并对其方法进行总结。为以上每个问题制作一个 OOP 设计。