程序设计语言的基础知识课件高中信息技术新粤教版必修1_第1页
程序设计语言的基础知识课件高中信息技术新粤教版必修1_第2页
程序设计语言的基础知识课件高中信息技术新粤教版必修1_第3页
程序设计语言的基础知识课件高中信息技术新粤教版必修1_第4页
程序设计语言的基础知识课件高中信息技术新粤教版必修1_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

4.1程序设计语言的基础知识在运用计算机程序求解问题时,需要有-种能够实现人机交流的语言,即程序设计语言。人们通过这种语言把求解的方法和步骤告诉计算机,计算机则按照程序的流程自动求解问题。例如,求解购买纪念品的最佳方案问题,需要知道各商品的单价,才能设计出最佳方案。现在设总预算为S.需要购买10个不同品种的商品数量为x1,x2,…,x10,则求解问题的思路如下:(1)上网搜索各个商品的价格。(2)求出各个商品的最低单价a1,a2,…,a10。(3)令E=S-(a1×x1+a2×x2+…+a10×x10).求x1,x2,…,x10的值(其中x1,x2,…,x10为正整数),使E最小(E≥0)。在编写上述求解算法程序前,首先应掌握程序设计的一此基础知识,包括程序的常量和变量、数据类型、运算符与表达式及函数等。我们以Python语言为例。4.1.1Python的常量和变量数据总是以常量或变量两种形式出现在程序中。1.常量常量是指在程序运行过程中其值始终不发生变化的量,通常是固定的数值或字符串。例如,45,-30.2001,'Hello','Good'等都是常量。常量可以在程序中直接使用,如语句“x=30*40"表示将30乘40的结果赋值给x,其中30和140都是常量,可以直接在程序中使用以表示数值30和40。2.变量变量是指在程序运行过程中其值可以发生变化的量。在程序设计语言中,变量可以用指定的名字来代表,即变量由变量的“标识符”(又称“名字”)和变量的“内容"(又称“值”)两部分组成。Python程序设计语言规定标识符由字母(A-Z,a~z)、数字(0~9)、下划线组成,并且其第一一个字符必须是字母或下划线,而不能是数字,如s1,k,num,pai等。在标识符中,字母大小写是有区别的,如"value"与"Value"是两个不同的标识符。在Python中,如果使用非法标识符,在运行程序时会有相关报错信息。例如,以下是报错非法标识符的程序:变量的内容在程序运行过程中是可以变化的。例如,一个变量的名字为E,其内容可以为50,也可以为70。变量就像一个房间一样,变量名相当于房间的房间号,内容相当于居住于房间的不同的人员等。需要注意的是,Python是动态语言,动态语言的变量不需要进行定义数据类型,其数据类型可以不固定,是动态的,需要根据其赋子的值来确定其数据类型。与之对应的是静态语言,静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。因此,和静态语言相比,动态语言更灵活。同样一个变量是可以重复赋值的,而且可以被赋予不同类型的值,如表4.2所示。同时,Python支持多种数据类型,在计算机内部,可以把任何数据都看成一个“对象”,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量关联起来。4.1.2Python的数据类型计算机能处理的远不只数值数据,还可以是文本、图形、音频、视频、网页等各种各样的数据。不同的数据,需要定义不同的数据类型。Python能够直接处理的常用数据类型有Number(数值)、String(字符串)、List(列表)、Tuple(元组)、Sets(集合)、Dictionary(字典)等。表4-3中列出了Python常用的基本数据类型。数据类型类型说Number(数值)Python支持以下三种不同的数值类型:整型(int)。通常被称为整型或整数,是正或负整数,不带小数点。在Python3.x版本中,整型是没有限制大小的,可以当作Long类型使用。浮点型(float)。浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示,如2.5e2=2.5×103=250。复数(complex)。复数由实数部分和虚数部分构成,可以用atbj或者complex(a,b)表示,复数的实部a和虚部b都是浮点型。String(字符串)字符串是以单引号或双引号括起来的任意文本,如'abc'"xyz"等。字符串的索引从0开始,-1为从末尾开始的位置。List(列表)列表是写在方括号“[]”之间、用逗号分隔开的元素列表。例如,list1=['Good','Run',1997,2000]和list2=[1,2,3,4,5,6,7]。列表的数据项不需要具有相同的类型。与字符串的索引一样,列表索引从0开始。Python已经内置确定列表的长度以及确定最大和最小的元素的方法。Tuple(元组)Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,创建元组只需要在括号中添加元素,并使用逗号隔开。例如,tup1=('Good','Run',1997,2000)和ltup2=(1,2,3,4,5)。元组与字符串类似,可以被索引且下标索引从0开始,-1为从末尾开始的位置,也可以进行截取。Sets(集合)集合是一个无序不重复元素的序列。基本功能是进行成员关系测试和删除重复元素。可以使用大括号{}或者set()函数创建集合。创建一个空集合必须用set()而不是{},因为{}是用来创建一个空字典的。Dictionary(字典)字典是无序的对象集合。与列表的区别在于:列表是有序的对象集合。字典当中的元素是通过键来存取的,而不是通过偏移存取。字典用{}标识,它是一个无序的“键(key):值(value)”对集合。键必须使用不可变类型。在同一个字典中,键必须是唯一的,探究活动交流各小组讨论、交流相应项目选题实施过程中可能用到的数据类型。讨论各小组对“合理定义数据类型可以优化程序的运行”这一观点进行交流和讨论,并举例说明。4.1.3Python的运算符与表达式在Python程序设计语言中对常量或变量进行运算或处理的符号称为运算符,参与运算的对象称为操作数。常用的运算符有算术运算符、逻辑运算符、关系运算符、赋值运算符、成员运算符等。由运算符、操作数连接而成的式子称为表达式。操作数可以是常量、变量、雨数等。1.算术运算符与算术表达式算术运算符包括“+”“-”“*”“/”“%”“**”和“//”,分别表示加、减、乘、除、求余、幂运算和整除。例如,“7%3=1”表示7除以3的余数,即1;“10**20”表示10的20次方,即1020。由算术运算符连接的表达式称为算术表达式。例如,“a+3*e”“(x+y)*n-7”等。2.逻辑运算符与逻辑表达式逻辑运算符包括“and”(与)、“or”(或)、“not”(非)共三个。由逻辑运算符连接而成的表达式称为逻辑表达式。逻辑表达式的值为True或False。可对应于整数1或0直接参与其他运算。逻辑表达式的运算顺序要根据逻辑运算符的优先级而定。假设变量a为0,b为1,c为2,则对应的逻辑表达式及其值如表4-4所示。3.关系运算符与关系表达式判断数据大小关系的运算符称为关系运算符,关系运算符有“>”(大于)、“>=”(大于等于)、“<”(小于)、“<=”(小于等于)、“=”(等于)、“<>”(不等于)。由关系运算符连接而成的表达式称为关系表达式。关系表达式的值为True或False,对应于整数1或0直接参与其他运算。例如,关系表达式“5>=3”的值为True,“9<8”的值为False。4.赋值运算符与赋值表达式在Python中对变量的赋值通过赋值运算符“=”来完成。赋值号不是等号,具有方向性,由右边赋给左边,且赋值号左边只能是变量,而不能是常量或表达式。Python的赋值运算符有多种,具体描述如表4-5所示。5.成员运算符除了前面的运算符,Python用成员运算符判断序列中是否有某个成员。Python的成员运算符描述如表4-6所示。6.运算符的优先级当一个表达式中有多种运算符时,运算的顺序将根据运算符的优先级由高到低进行运算。如果是同级运算则按从左到右的顺序进行。Python常用运算符的优先级如表4-7所示。思考各小组讨论程序设计中的运算符与表达式跟数学中的运算符与表达式的异同。4.1.4Python的函数函数是Python语言程序的基石,是组织好的、可重复使用的、用来实现单-或相关联功能的代码段。Python默认带有一些常用的函数,如求绝对值函数、求和函数、求最大值和最小值函数等。Python中常用的函数如表4-8所示。拓展Python程序设计开发环境Python是一种面向对象的解释型计算机程序设计语言。Python语言的安装包内置了开发环境IDLE。为了快捷、方便地掌握Python语言编程,这里介绍另一个开源的Python发行版本Anaconda及其程序设计开发环境Jupyternotebook,它包含了Python语言完整的内核、功能强大的标准库和第三方扩展库等。按照教科书配套学习资源包“关于Python语言编程环境及各章程序使用说明”的指引方法,获取并运行文件安装Anaconda。安装成功后

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论