每个计算机程序都用来解决特定计算问题,较大规模的程序提供丰富功能解决完整计算问题。例如:控制航天飞机运行的程序、操作系统等。小型程序或程序片段可以为其他程序提供特定计算支持,作为解决更大计算问题的组成部分。 无论程序规模如何,每个程序都有统一的运算模式:输入数据、处理数据和输出数据。这种朴素运算模式形成了程序的基本编写方法:IPO(Input, Process, Output)方法。 IPO程序编写方法 输入数据 处理数据 输出数据 IPO程序编写方法 输入数据 输入(Input)是一个程序的开始。程序要处理的数据有多种来源,形成了多种输入方式,包括:文件输入、网络输入、控制台输入、交互界面输出、随机数据输入、内部参数输入等。 IPO程序编写方法 文件输入将文件作为程序输入来源,在获得文件控制权后,需要根据文件格式解析内部具体数据。例如统计excel文件数据的数量,需要首先获得excel文件的控制权,打开文件后根据excel中数据存储方式获得所需处理的数据,进而开展计算 网络输入将互联网上的数据作为输入来源。使用网络数据需要明确网络协议和使用特定的网络接口。例如,捕获并处理互联网上的数据,需要使用HTTP协议并解析HTML格式 IPO程序编写方法 控制台输入将程序使用者输入的信息作为输入来源。当程序与用户间存在交互时,程序需要有明确的用户提示,辅助用户正确输入数据。从程序语法上来说,这种提示不是必须的,但良好的提示设计有助于提高用户体验。 交互界面输入通过提供一个图形交互界面从用户处获得输入来源。此时,鼠标移动或点击操作、文本框内的键盘操作等都为程序提供事件和数据输入。 IPO程序编写方法 随机数据输入将随机数作为程序输入,这需要使用特定的随机数发成器程序或调用相关函数。4.5节将详细介绍产生随机数的方法。 内部参数输入以程序内部定义的初始化变量作为输入,尽管程序看似没有从外部获得输入,但程序执行之前的初始化过程为程序赋予了执行所需的数据。 IPO程序编写方法 控制台输入将程序使用者输入的信息作为输入来源。当程序与用户间存在交互时,程序需要有明确的用户提示,辅助用户正确输入数据。从程序语法上来说,这种提示不是必须的,但良好的提示设计有助于提高用户体验。 交互界面输入通过提供一个图形交互界面从用户处获得输入来源。此时,鼠标移动或点击操作、文本框内的键盘操作等都为程序提供事件和数据输入。 IPO程序编写方法 输出数据 输出(Output)是程序展示运算成果的方式。程序的输出方式包括:控制台输出、图形输出、文件输出、网络输出、操作系统内部变量输出等。 IPO程序编写方法 控制台输出以计算机屏幕为输出目标,通过程序运行环境中的命令行打印输出结果。这里“控制台”可以理解为启动程序的环境,例如,Windows中的命令行工具、IDLE工具等。 图形输出在计算机中启动独立的图形输出窗口,根据指令绘制运算结果。 IPO程序编写方法 文件输出以生成新的文件或修改已有文件方式输出运行结果,这是程序常用的输出方式。7.1节将具体介绍文件的使用。 网络输出以访问网络接口方式输出数据。第12章将介绍自动向搜索引擎提交关键词查询的实例。 操作系统内部变量输出指程序将运行结果输出到系统内部变量中,这类变量包括管道、线程、信号量等。 IPO程序编写方法 处理数据 处理(Process)是程序对输入数据进行计算产生输出结果的过程。计算问题的处理方法统称为“算法”,它是程序最重要的组成部分。可以说,算法是一个程序的灵魂。 IPO程序编写方法 ——是否存在没有输入输出的程序呢? ——存在,例如,无限循环,代码如下。 while(True): a = 1 IPO程序编写方法 这个无限循环程序包含两行语句 其中,while()根据括号内部值的真假决定是否进入循环,当括号内值为真时,进入第2行语句执行,否则跳过。由于括号内值被设定为True(即“真”),代码将一直执行下去。 无限循环程序尽管没有输入也没有输出,它也有价值。通过不间断执行,该程序快速消耗CPU的计算资源,可以用来辅助测试CPU或系统性能。 IPO程序编写方法 IPO不仅是程序设计的基本方法,也是描述计算问题的方式。以微实例1.1圆面积的计算为例,其IPO描述如下: 输入:圆半径raduis 处理:计算圆面积area = π * radius * radius 输出:圆面积area 微实例1.1圆面积的计算 可以看到,问题的IPO描述实际上是对一个计算问题输入、输出和求解方式的自然语言描述,为了区别其他描述方式,本书中所有IPO描述都包括“输入”、“处理”和“输出”三个引导词。 IPO描述能够帮助初学程序设计的读者理解程序设计的开始过程,即了解程序的运算模式,进而建立设计程序的基本概念。 微

python课程ppt_Python电子教学课件12程序设计基本方法.ppt相关推荐

  1. 软件设计与体系结构第二版董威_董威-软件设计与体系结构(第2版)-PPT课件.zip-3-4-形式化方法.ppt...

    董威-软件设计与体系结构(第2版)-PPT课件.zip-3-4-形式化方法.ppt (1009.5 KB) 下载风险提示 若需要下载,请务必先预览(下载的文件和预览的文件一致) 由于本站上传量巨大,来 ...

  2. 计算机体系结构流水线数据相关,计算机体系结构PPT教学课件-第三章流水线.ppt...

    计算机体系结构PPT教学课件-第三章流水线 Chapter 3 PIPELINING Basic and Intermediate Concepts流水线:基本概念 Computer Architec ...

  3. python课程设计编写电子通讯录_python写一个通讯录

    闲着没事,用python写一个模拟通讯录,要求要实现常用的通讯录的功能,基本流程如下 ​ 接下来就按照这个流程实现各个模块的功能 1. 定义一个类,并初始化 def __init__(self): w ...

  4. python课程设计编写电子通讯录_用Python实现简单通讯录

    一个简单的通讯录例子 #!/usr/bin/python __author__ = 'fierce' #coding:utf-8 import os #引用os模块 import pickle #应用 ...

  5. 是用来将汉字输入到计算机中的一组,计算机应用基础(windows7+office2010)教学课件作者张巍4.ppt...

    文档介绍: 项目四文字录入任务1了解输入法任务2搜狗输入法返回任务1了解输入法1汉字输入技术的分类文字输入的方法主要分为键盘输入法和非键盘输入法两大类,非键盘输入法又包括手写识别输入.语音识别输入和光 ...

  6. 七年级计算机与信息安全教案,苏教版七年级信息技术上册2.3《计算机与信息安全》教学课件1 (共18张PPT)...

    ID:5616596 分类: 山东 , 2016 资源大小:992KB 资料简介: 当我们感冒时,我们会出现咳嗽.流鼻涕.发烧等症状.它使我们昏昏欲睡,打不起精神,无法集中精神进行正常的学习与工作.不 ...

  7. 第 1 章 程序设计基本方法

    整理的文章内容主要来源为高教版<计算机等级考试二级 Python>教程视频讲义,并且更正了原讲义中的错误的地方. 专栏文章索引如下: 考试大纲 第 1 章 程序设计基本方法 第 2 章 P ...

  8. java毕业设计程序设计类课程的课堂教学效果评价系统Mybatis+系统+数据库+调试部署

    java毕业设计程序设计类课程的课堂教学效果评价系统Mybatis+系统+数据库+调试部署 java毕业设计程序设计类课程的课堂教学效果评价系统Mybatis+系统+数据库+调试部署 本源码技术栈: ...

  9. 【教学课件】IT教学课件和课程考试资料汇总

    00. 目录 文章目录 00. 目录 01. C语言教学课件 02. C++教学课件 03. 数据结构教学课件 04. 汇编语言教学课件 05. 单片机教学课件 06. 计算机网络教学课件 07. 操 ...

最新文章

  1. 8080CPU寄存器划分
  2. UBuntu14.04下安装和卸载Qt5.3.1
  3. 深入了解iSCSI的2种多路径访问机制
  4. 可能是堆被损坏,这也说明 XX.exe 中或它所加载的任何 DLL 中有 bug
  5. Redhat 5.4 安装Vbox 增强工具失败解决方法。
  6. 用sqlSessionFactoryBeanName而不用sqlSessionFactory的原因
  7. ITK:设置默认的线程数
  8. android wear ios表盘,秒杀 Apple Watch,Android Wear 又有 17 款新表盘可以玩啦!
  9. iPhone XR再降价:64GB到手最低仅需4149元
  10. 2021年中国单硝酸异山梨酯市场趋势报告、技术动态创新及2027年市场预测
  11. pythonpptx模块详解_详解 Python 操作 PPT 的各种骚操作!
  12. 小蓝本 第一本《因式分解技巧》第四章 拆项与添项 笔记(第四天)
  13. 【论文阅读】Advances and challenges in conversational recommender systems: A survey
  14. 2021-02-15 大数据课程笔记 day26
  15. 第11.3节 Python正则表达式搜索支持函数search、match、fullmatch、findall、finditer
  16. 倒计时!「一起学」大会线下分享与社群内部直播!
  17. 如何用Excel做一个战斗模拟器(三)战斗过程模拟
  18. 【cocos2d-x制作别踩白块儿】第六期:游戏交互实现
  19. 唤醒时间过长 Android,关于android:功耗问题之过多唤醒源-wakeups
  20. 移动端性能陷进和硬件加速

热门文章

  1. 基于JAVA+Servlet+JSP+MYSQL的学生信息管理系统
  2. drf 安装_drf 安装与配置
  3. android 4.2.2 jelly bean更新,Android 4.2.2 Jelly Bean更新已经发布:有何改变?
  4. markdownpad2下载安装教程
  5. Flume的Source
  6. BZOJ5251 八省联考2018劈配(网络流)
  7. jumpserver简易安装
  8. 如何让shell脚本自杀
  9. 支付宝Android接口4.0以上报错Failure calling remote service
  10. 关于module_param()宏