1.1-1.2程序的基本概念和程序设计.pptVIP

  • 3
  • 0
  • 约2.69千字
  • 约 31页
  • 2018-05-27 发布于江苏
  • 举报
1.1-1.2程序的基本概念和程序设计

兰州工业高等专科学校计算机工程系 导学 “Java语言是长时间以来最卓越的程序设计语言” 专业平台课程 内容体系 实践环节 学习方法 学习方法 1. 案例学习; 2. 任务驱动法; 3. 多读、多写程序; 4. 小组学习、协作学习; 5. 注意编程规范; 6.API 边学边用。 1.1 程序的基本概念 问题:“裁纸登月球” /** *地球离月球的距离是385000KM,有人说: *“将一张纸裁成两等份,把裁成的两张摞 *起来,再裁成两等份。如此重复下去, *第43次后所有纸的高度便相当于地球到 *月球的距离。”一张纸的厚度是0.006cm, *你相信吗? */ 想一想: 1 裁纸摞起来:paperThick*2 2 记录次数:n+1 3 重复1和2两步(当纸厚=385000KM ) 准备工作: 先让paperThick=0.006cm n=0 public class EarthToMoonDistance { public static void main(String []args) { float paperThicker = 0.006f; int n = 0; while(paperThicker = 38500000000f) { paperThicker = paperThicker *2; n++; } System.out.println(纸厚=+ paperThicker ); System.out.println(裁纸次数=+n); } } 思考 什么是算法?如何表示? 什么是程序? 如何表现? 1.1.1 算法 远在计算机未出现前,人类就已经积累了针对解决各类问题的丰富经验,这种用于 解决特定问题的一个具体过程称为“算法”。 1.1.2 实体及特征 除数学问题外,现实生活中的许多行为也可以用算法来描述。 银行存款可表达为: 输入: 存款金额a和当前余额b. 输出: 新余额b’。 步骤1: 令b’=b十a并终止程序。 银行取款则可描述为: 输入: 取款金额a、当前余额b和透支限额m。 输出:已取金额a’、和新余额b’。 步骤1: 如果ab+m则令a’=0、b’=b并转向步骤2; 否则令a’=a、b’=b-a并终止程序。 步骤2: 警告超额透支并终止程序。 存款与取款都围绕着账户余额这一数据进行操作,这两个行为密切相关。按照日常思维习惯,银行账户通常被看作是一个整体事物, 银行帐户的结构:账号、户名、余额等信息 银行帐户的行为:存款、取款(禁止超额透支)。 不同账户个体虽然结构相同,但所具有的信息却可能不同,例如张三的账户与李四的账户有不同的账号和户名,它们的存款余额也不一定相同。 启示 这里涉及两个不同范畴的概念:银行账户是一个抽象的、一般化的集合性概念,而张三的账户、李四的账户等则是具体的、实实在在的个体。通过观察和分析不同的个体,抽象出一般化的实体概念,这种抽象概念称为“类型”,类型中的个体称为“实例”。 实体 这样一类整体事物称为实体。描述一个实体的概念时,至少应涉及三方面特性:属性、行为和约束。例如对银行账户而言,属性有账号、户名、密码、当前余额、透支限额等,行为有存款和取款,约束则是任何时候禁止超额透支。 实体示例:银行账户 属性: 账号、户名、密码、当前余额b、透支限额m 行为: 存款 取款 约束:b十m≥0 启示 从系统状态的角度看,实体的属性表达了实体的状态,这些状态可由实体的行为来改变,并且实体状态在任何时刻都满足实体的约束 1.1.3 程序 为求解一个问题,应首先寻找解决问题的算法和实体,然后将算法与实体转换为计算机程序。 程序是算法和实体在计算机系统中的体现。 1.2 程序设计 1.2.1 程序设计语言的发展 1.2.2 程序设计概念 1.2.1程序设计语言的发展 1.面向机器的语言 (1)机器语言 (2)汇编语言 (3)特点 优点:面向机器,可以充分发掘硬件的潜力,拥有较高的运行效率 缺点:可读性差;可移植性几乎没有。 1.2.1程序设计语言的发展 2.面向过程的语言(高级语言) 面向过程的程序设计的核心是数据结构和算法。 常用语言:BASIC、FORTRAN、Pascal、C等 编译程序或解释程序 3.面向对象的语言 C++、Java 1.2.2 程序设计概念 程序设计可看作是为解决某一特定问题而构造一种专用工具的智力活动。 程序设计工作必须具备4方面的知识:应用

文档评论(0)

1亿VIP精品文档

相关文档