资源简介 第四章 程序设计基础购买纪念品的最佳方案设计报告一、引言运用计算机解决实际问题是人类求解问题的一条途径,学习计算机 程序设计语言,将人类聪颖且富有想象力的求解问题的算法告知计算机, 利用计算机强大的计算能力,实现人机交互,从而更好地为学习和生活 服务。二、设计目的在本项目中,为了购得既经济适用又美观大方的商品,人们就要根据 需求设计好购买方案,通过了解Python程序设计语言的基础知识,掌握程序 三种控制结构,从而学会使用程序设计语言解决问题的过程与方法。三、程序设计语言的基础知识1.明确问题通过编写计算机程序求解购买纪念品的最佳方案问题中,我们首先要 掌握程序设计语言的基础知识,如常量、变量、数据类型、运算符与表达 式、常用的函数、程序设计的三种基本控制结构等内容,才能设计出最佳 方案。2.了解利用程序设计语言解决问题需要的基础知识本书所使用的程序设计语言为:Python语言。程序中使用的常量:在程序中值始终不发生变化的量。程序中使用的变量:在程序中值可以发生变化的量。程序设计语言规定标识符由字母(A~Z,a~z)、数字(0~9)、下划线组· 1 ·成,并且其第一个字符必须是字母或下划线,而不能是数字。同时要注意 在标识符中,字母大小写是有区别的,如“value”与“Value”是两个不同 的标识符。程序中使用到的数据类型:Number(数值)、String(字符串)、List (列表)、Tuple(元组)、Set(集合)、Dictionary(字典)等。程序使用到的运算符和表达式:对常量或变量进行运算或处理的符号 称为运算符,参与运算的对象称为操作数。常用的运算符有算术运算符、 逻辑运算符、关系运算符、赋值运算符、成员运算符等。由运算符、操作 数连接而成的式子称为表达式。操作数可以是常量、变量、函数等。程序使用到的函数:函数是Python语言程序的基石,是组织好的、可重 复使用的、用来实现单一或相关联功能的代码段。四、用程序控制结构设计购买纪念品的最佳方案人们在网络购物时经常会同时购买多种物品,当购买数量比较多时商 家有时会打折,那么如何设计方案,才能实现使用有限的金额购买物品数 量最多,或者购买数量相同的情况下使用金额最少呢?通过本章的学习, 我们可以运用程序控制结构来设计购买纪念品的最佳方案。1.运用顺序结构设计最佳方案问题描述:项目小组成员在某网购站点上获取到如下信息:笔记本1的单价是3元, 笔记本2的单价是5元,如果两种笔记本同时购买,价格可以打8折。计算一 下,购买笔记本1和笔记本2各n本,可以优惠多少元?(以元为单位,四舍五入到小数点后两位)解决问题的步骤:(1)分析问题。先求出不使用优惠而单独购买所需费用,再求出使用优惠方案购买所 需费用,两者相减即为节省的费用。·2 ·(2)设计算法。(自然语言描述①输入n的值;②令a=3×n;③令b=5×n;④令y=(a+b)×(1-0.8);⑤输出结果y;⑥结束。) (流程图描述) (图 4-1 流程图)(3)编写程序(代码示例)。n = int(input("输入购买的笔记本1和笔记本2的本数均为: ")) a = 3*n b = 5*n y = (a+b)*(1-0.8) print("输入购买的笔记本1和笔记本2的本数均为:", n, "本") print("可节省的费用为:", "% .2f"% y, "元")(4)调试运行程序。输入n的值为50,得到结果如下所示。(输入购买的笔记本1和笔记本2的本数均为:50输入购买的笔记本1和笔记本2的本数均为:50 本可节省的费用为:80.00 元)2.运用选择结构设计最佳方案问题描述:某项目小组成员在某购物网站上了解到某种笔记本搞优惠活动,规定一次购买6本以上(含6本)10本以下(含10本)打九折,一次 性购买11本以上(含11本)打八折。怎样根据笔记本的单价和购买数量来 编写程序计算总费用?(总费用以元为单位,四舍五入到小数点后两位)·3 ·解决问题的步骤:(1)分析问题。设该小组购买笔记的数量为s本,笔记本的单价为每本p元,折扣系数 为j,总金额为t ,关键的问题是如何根据购买的本数确定折扣系数。根据题意有:如果 s<6,则j=1.0;如果 s ≥6而且 s ≤10,则j=0.9;如果 s ≥11,则j=0.8;又 t = s ×p ×j,求出t的值即为所求的总费用。(2)设计算法。(自然语言描述流程图描述①输入s,p的值;②如果s<6,则j=1.0;③如果s≥6而且s≤10,则j=0.9;④如果s≥11,则j=0.8;⑤t=s×p×j;⑥输出t的值;⑦结束。) (图 4-2 流程图)·4 ·(3)编写程序(代码示例)。(s=int(input("请输入购买的笔记本的数量(多少本):"))#int( )将变量转换成整型p=float(input("请输入笔记本的单价(每本多少元):"))#float( )将变量转换成浮点型ifs<6:j=1.0ifs>=6ands<=10:j=0.9ifs>=11:j=0.8t=s*p*jprint("总费用为:","%.2f"%t,"元"))(4)调试运行程序。输入s的值为100, p的值为3.20,得结果如下所示。(请输入购买的笔记本的数量(多少本):100请输入笔记本的单价(每本多少元):3.20总费用为: 256.00 元)在生活中很多事情都要做出判断和选择。例如使用测温枪测量体温的 时候,当体温超过37.3 ℃时,会发出警报声;当我们进入微信、邮箱或者 是成绩查询系统的时候,需要输入正确的用户名和密码才能成功登录等。3.运用循环结构设计最佳方案用for循环、while循环编程实现活动三的任务3-1“网购物品累计费用计 算的问题”,计算从1到10的累加值,并对实施情况进行对比。·5 ·表 4-1 使用 for 循环与 while 循环计算 1 到 10 的累加值循环结构 程序内容 不 同 相 同 运行结果for循环 sum = 0 for i in range(1, 11): sum = sum+i print("购买笔记本一 共花", sum, "元") for循环结构 更适合于有明确 的循环次数(或 循环范围)的场 景。 两者都是重 复执行一段程序 代码。 两者都是在 满足一定循环条 件时执行,不满 足循环条件则退 出循环结构,执 行后面的语句。 购买笔记 本一共花 55元while循环 i=1 sum=0 while i<=10: sum=sum+i i += 1 print("购买笔记本一 共花", sum, "元") while循环 结构更适合于不 知道循环多少次 时,在满足某种 条件的情况下结 束循环的场景。设计运用循环嵌套的方法编程解决最优采购方案设计问题,比如编 写程序实现,我们选择购买单价分别为1.80元的笔记本(设购买数量为x 件)、1.90元的笔(设购买数量为y件)、2.10元的小饰品(设购买数量为z 件)作为活动的赠品,每一种物品至少买100件,并且尽可能地用完1000元 经费。在这段程序中,对“x,y,z从100至555、526、476逐个枚举”的过 程运用了嵌套循环,分为三层循环。首先,进行内层循环;固定x和y,逐 一改变z的值,直至z的值达到476。其次,进行中层循环;固定x ,逐一改变 y的值,每次改变都对z进行遍历。最后,进行外层循环;逐一改变x 的值, 每次改变x的值后,都要逐一改变y的值,并且对z进行遍历。五、结语1.学习一种程序设计语言的基础知识在开展本项目的过程中,我们学习了运用计算机程序设计语言—— Python来求解问题,通过三大基本结构(顺序结构、选择结构和循环结构) 的一般格式和使用方法,把求解的方法和步骤告诉计算机,从而解决了小 组选题下的实际问题。·6 ·2.领悟计算机求解问题的价值体现在解决实际问题的过程中我们发现,学习一种程序设计语言并不仅仅 是学会编程的基础知识,更重要的是要学会求解问题的思维路径,我们要 将这种思维方式融入学习生活中、应用到日常管理以及与他人进行交流和 互动中。·7 · 展开更多...... 收起↑ 资源预览