课堂练习之最高折扣,最低优惠规划
2015-04-14 20:14
218 查看
一、题目要求与设计思路
1.题目要求
书店针对《哈利波特》系列书籍进行促销活动,一共5卷,用编号0、1、2、3、4表示,单独一卷售价8元, 具体折扣如下所示:
本数 折扣
2 5%
3 10%
4 20%
5 25%
根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。设计算法能够计算出读者购买一批书的最低价格。
2.设计思路
五本一下的情况就是基础,其他所有比五本以上的情况都在该基础之上,我们只需将买6、7、8、9本的用户最低价格解决了,其他的就可以直接叠加了,通过计算,买6本的时候按5-25%打折、1本不打折方式价钱最少;买7本的时候按5-25%打折、2-5%打折方式价钱最少;买8本的时候按两次4-20%打折方式价钱最少;买9本的时候按5-25%打折、4-20%打折方式价钱最少。然后用户输入购买数量i,利用下列语句实现a = i / 5;b = 30 * a;c = i % 5。
二、源代码
三、运行结果截图
四、心得体会
这个题目一开始看着挺不好计算的,但是再复杂再大的高楼都有一个基础,那么这道题目来说,店里给的折扣说明就是基础,我们只需要按着这个基础往上考虑就好了,所以,软件开发,尤其像这一类的实现肯定会有办法,找到实质性的东西,找到什么是变量,什么是不变的量,什么是基础就好办了。
1.题目要求
书店针对《哈利波特》系列书籍进行促销活动,一共5卷,用编号0、1、2、3、4表示,单独一卷售价8元, 具体折扣如下所示:
本数 折扣
2 5%
3 10%
4 20%
5 25%
根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。设计算法能够计算出读者购买一批书的最低价格。
2.设计思路
五本一下的情况就是基础,其他所有比五本以上的情况都在该基础之上,我们只需将买6、7、8、9本的用户最低价格解决了,其他的就可以直接叠加了,通过计算,买6本的时候按5-25%打折、1本不打折方式价钱最少;买7本的时候按5-25%打折、2-5%打折方式价钱最少;买8本的时候按两次4-20%打折方式价钱最少;买9本的时候按5-25%打折、4-20%打折方式价钱最少。然后用户输入购买数量i,利用下列语句实现a = i / 5;b = 30 * a;c = i % 5。
二、源代码
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace youhuifangfa { public partial class Form1 : Form { double b, sum; int a, i, c; public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { i = int.Parse(textBox1.Text); if (i % 5 != 3) { a = i / 5; b = 30 * a; c = i % 5; if (c == 0) { sum = b; } if (c == 1) { sum = b + 8; } else if (c == 2) { sum = b + 16 * 0.95; } else if (c == 3) { sum = b + 24 * 0.9; } else if (c == 4) { sum = b + 32 * 0.8; } } else if(i%5==3&&i!=3) { a = i / 5; b = 30 * (a - 1); c = i % 5; sum = b + 32 * 0.8 * 2; } else if (i == 3) { sum = 0.9 * 24; } textBox3.Text = sum.ToString(); } private void textBox1_TextChanged(object sender, EventArgs e) { } } }
三、运行结果截图
四、心得体会
这个题目一开始看着挺不好计算的,但是再复杂再大的高楼都有一个基础,那么这道题目来说,店里给的折扣说明就是基础,我们只需要按着这个基础往上考虑就好了,所以,软件开发,尤其像这一类的实现肯定会有办法,找到实质性的东西,找到什么是变量,什么是不变的量,什么是基础就好办了。
相关文章推荐
- 软件工程课堂练习-最高折扣
- 课堂练习-买书折扣最低
- java排序练习:输入三个学生的姓名和他们的三个评分,去掉最高分和最低分
- 课堂练习_买书的最低价钱
- 动态规划练习--19(最低通行费)
- #练习#输入学生姓名与成绩,求班级平均分以及最低分学生成绩的姓名,最高成绩及姓名。
- 课堂练习—最低价格
- 软件工程课堂练习——求买书最低价格
- 软件工程课堂练习 图书折扣问题
- 课堂练习——书店折扣问题
- 第十七周自由练习项目——acm 学生最高最低成绩
- 集合练习 去掉最高最低分
- 课堂练习——如何使读者以最大折扣购买一批书
- 课堂练习——计算法能够计算出读者购买一批书的最低价格。
- 课堂练习—设计算法能够计算出读者购买一批书的最低价格
- 第十七周自由练习项目——acm 学生最高最低成绩
- 课堂练习-买书价格最低
- 第十七周自由练习项目——acm 学生最高最低成绩
- 上机练习题——接口(课堂练习2)
- 关于打分去掉最高分和最低分的代码