软件工程课堂练习 图书折扣问题

一、题目要求

书店针对《哈利波特》系列书籍进行促销活动,一共5卷,用编号0、1、2、3、4表示,单独一卷售价8元, 具体折扣如下所示:

本数                    折扣

2                       5%

3                       10%

4                       20%

5                       25%

根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。设计算法能够计算出读者购买一批书的最低价格。

二、设计思路

本来上课的是时候是有思路的,课下了去百度了一下这个问题然后发现时老师给推荐的那本好像叫编程之美那本书里面的比较经典的的例题,本来想去看一下大神们的思路的,但是越看越看不懂。。只能说程序员哥哥们的语文基础差的一逼,所以干脆就还是按照我自己的思路来了,就是把所有买书的本书除以5求余加5,然后就会得到6789这四个数,依次分别算一下需要多少怎么安排最合算就好了再加上之前的剩下的书肯定是5的倍数,就好算了剩下的。恩恩 就这么来。

三、代码

 1 #include<iostream.h>
 2 int main()
 3 {
 4     int a,b,c;
 5     float h1,h2,h3,sum1,sum2,sum;
 6     cout<<"输入要购买的的本数:";
 7     cin>>a;
 8     b=a%5+5;
 9     c=a/5-1;
10     sum1=c*8;
11     if(a%5==0)
12     {
13         sum=a/5*8*0.8;
14     }
15     else
16     {
17     switch(b)
18     {
19     case 6:
20         h1=3*8*0.9*2;
21         h2=4*8*0.8+2*8*0.95;
22         h3=5*8*0.75+8;
23         if(h1>h2)
24         {
25             h1=h2;
26         }
27         if(h1>h3)
28         {
29             h1=h3;
30         }
31         break;
32     case 7:
33         h1=5*8*0.75+2*8*0.95;
34         h2=4*8*0.8+3*8*0.9;
35         if(h1>h2)
36         {
37             h1=h2;
38         }
39         break;
40     case 8:
41         h1=4*8*0.8*2;
42         h2=5*8*0.75+3*8*0.9;
43         if(h1>h2)
44         {
45             h1=h2;
46         }
47         break;
48     case 9:
49         h1=5*8*0.75+4*8*0.8;
50         break;
51     }
52     sum2=h1;
53     sum=sum1+sum2;
54     }
55     cout<<sum<<endl;
56     return 0;
57 }

四、运行结果

看到大家都是用的买八本书 我也买八本书啦~~~~

五、总结心得

这次做得还算顺利,虽然每次编写代码只是知道思想,却从不会编写,但这次真真的是我自己写的,虽然问了同学好多低级的问题,但自己感觉不错。毕竟做出来了嘛~~好了 这就这样,我要继续写下一篇博客去了。么么哒。

时间: 2024-10-05 06:59:14

软件工程课堂练习 图书折扣问题的相关文章

软件工程课堂作业04

软件工程课堂作业04 源代码: 1 package jian; 2 import java.io.*; 3 import java.util.Scanner; 4 public class Point3D{ 5 public static int Lenght(int list[],int lenght) 6 { 7 int i,max; 8 max=list[0]; 9 for(i=1;i<=(lenght-1);i++) 10 { 11 if(list[i]>max) 12 { 13 ma

课堂作业——图书最优购买

1.题目要求 书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元, 具体折扣如下所示: 本数                    折扣 2                       5% 3                       10% 4                       20% 5                       25% 根据购买的卷数以及本数,会对应不同折扣规则情况.单数一本书只会对应一个折扣规则,例如购买了

软件工程——课堂改进意见

这学期有一门必修课程<软件工程>.老师是软件工程专业的系主任王建民老师.从上第一节<软件工程>课起.就发现了王老师讲课特点:1)上课不准睡觉,抓到睡觉的同学会提出批评.2)上课不准玩手机3)上课带电脑,会有相应的课堂练习4)讲课激情洋溢,上课氛围从不会沉闷.感觉课堂练习还是蛮重要的,像我们之前听的课或现在正在进行的课程,全都是老师在讲台上讲,同学们在下面死气沉沉的听,一节课下来几乎不动手,不动脑,就只是机械的抬头看黑板,看多媒体.由于大一的C++基础比较薄弱,加上学完这门课程后好久

软件工程-课堂作业(最低购书价)

书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元, 具体折扣如下所示:                               本数                  折扣                                   2                       5%                                   3                       10%             

软件工程课堂练习-随机生成30道四则运算练习题

习题要求:随机生成30道四则运算题 以下是程序代码: 1 #include "stdafx.h" 2 #include "stdio.h" 3 #include "time.h" 4 #include "stdlib.h" //随机器函数头文件 5 6 void print() 7 { 8 srand((int)time(0)); 9 for(int i=0;i<=29;i++) 10 { 11 int x; 12 in

课堂练习——书店折扣问题

1.设计题目 书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元, 具体折扣如下所示:                               本数                  折扣                                   2                       5%                                   3                       10%      

软件工程课堂训练————最便宜购书方案

一·实验题目: 某书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元,具体折扣如下所示: 本数                  折扣 2                       5% 3                       10% 4                       20% 5                       25% 根据购买的卷数以及本数,会对应不同折扣规则情况.单数一本书只会对应一个折扣规则,例如购买了两

软件工程课堂作业——计算最优惠价格

一.题目: 书店针对<哈利波特>系列书籍进行促销活动,一共5卷,单独一卷售价8元,具体折扣如下:本数对应的折扣分别为:2本—5%,3本—10%,4本—20%,5本—25%.根据购买的卷数以及本数,会对应不同的折扣规则情况.单独一本书只会对应一个折扣规则.设计算法能够计算出读者购买一批书的最低价格. 二.设计思路: 对于1-5,定义double具有返回值类型的函数,列举5种优惠情况.对于6-9,例如7,先计算2和5这种情况,然后2加1变3,计算3和4这种情况:然后3再加1,计算4,3这种情况.直

软件工程课堂练习

根据要求,本次作业结对编程完成.与队友相互思考分析题目,最终完成.蒋陵郡负责完成代码的实现, 我主要负责编程过程中的一些小问题的判断和分析. 题目:返回一个整数数组中最大子数组的和 要求: 输入一个一维整形数组,数组里有正数也有负数. 一维数组首尾相接,象个一条首尾相接带子一样. 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. 求所有子数组的和的最大值. 设计思想: 用户自定义数组长度并依次输入数组元素,设一个全局变量初始化为零的数组a[N],N=10000: 1.因为该数组首