第三章信息加工与表第三章信息加工与表达达第三节编程解决问题和智能信息处第三节编程解决问题和智能信息处理理22、编程解决问题、编程解决问题((11)分析问题)分析问题解决问题之前需要对问题进行深入的分析,解决问题之前需要对问题进行深入的分析,明确问题的需求,然后确定解决问题的办法
明确问题的需求,然后确定解决问题的办法
分析问题(软件工程中称为问题定义)是利分析问题(软件工程中称为问题定义)是利用计算机解决问题过程中最基础、最重要的用计算机解决问题过程中最基础、最重要的工作
例如,物理老师想编写一个描述小球做平抛例如,物理老师想编写一个描述小球做平抛运动的轨迹的程序
运动的轨迹的程序
问题的要求问题的要求已知的内容已知的内容输出的内容输出的内容((22)设计算法)设计算法我们需要将解决问题的方法转换成一系列我们需要将解决问题的方法转换成一系列具体的、可操作的步骤,这些步骤的集合具体的、可操作的步骤,这些步骤的集合称为算法
描述算法的工具:流程图、伪代码、自然描述算法的工具:流程图、伪代码、自然语言
符号符号符号名称符号名称功能说明功能说明起止框起止框表示一个算法的开始表示一个算法的开始输入、输出框输入、输出框框内标明输入、输出内容框内标明输入、输出内容处理框处理框框内标明所进行的处理框内标明所进行的处理判断框判断框框内标明判断条件,框外框内标明判断条件,框外标明条件成立及不成立的标明条件成立及不成立的不同流向不同流向带箭头的流线带箭头的流线表示从某一框到另一框的表示从某一框到另一框的流向流向开始重力加速度g=9
8小球运动时间初值t=1输入小球水平初速度vt