日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

课堂练习之买书问题

發布時間:2023/12/19 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 课堂练习之买书问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、題目

? ? 在節假日的時候,書店一般都會做促銷活動。由于《哈利波特》系列相當暢銷,店長決定通過促銷活動來回饋讀者。在銷售的《哈利波特》平裝本系列中,一共有五 卷,用編號0, 1, 2, 3, 4來表示。假設每一卷單獨銷售均需要8歐元。如果讀者一次購買不同的兩卷,就可以扣除5%的費用,三卷則更多。假設具體折扣的情況如下:

      本數????? ??? 折扣

      2??????? ? 5%

      3??????? ? 10%

      4?????? ??? 20%

      5?????? ??? 25%

? ? 在一份訂單中,根據購買的卷數以及本書,就會出現可以應用不同折扣規則的情況。但是,一本書只會應用一個折扣規則。比如,讀者一共買了兩本卷一,一本卷二。那么,可以享受到5%的折扣。另外一本卷一則不能享受折扣。如果有多種折扣,希望能夠計算出的總額盡可能的低。

要求根據這樣的需求,設計出算法,能夠計算出讀者所購買一批書的最低價格。

二、思路分析

在小于5本的情況下,直接按折扣買就好了:

2 ?????????5%

3???????? 10%

4???????? 20%

5???????? 25%

在大于5本的情況下,買法如下(對應折扣=本數*折扣):

    本數????? 可能的分解本數 ???? 對應的折扣

     6     =5+1 ??     1.25

     7     =5+2      1.35

     8     =4+4      1.6

     9     =5+4      2.05

     10     =5+5  ? ? ? ? ? ? ?2.5

在大于10本的情況下,可以分解為以上小于10本的情況來計算。

設n為輸入的書本數,當(n%5!=3)成立時,則對應上面的6,7,9三種折扣,當(n%5==3&&n!=3)成立時,則對應上面的8的折扣。

?

三、程序源碼

1 #include<iostream.h> 2 void main() 3 { 4 double b,sum; 5 int a,i,c; 6 cout<<"*********書店促銷*********"<<endl; 7 cout<<"****本數********折扣******"<<endl; 8 cout<<"***** 2 ******** 5% ******"<<endl; 9 cout<<"***** 3 ******** 10% ******"<<endl; 10 cout<<"***** 4 ******** 20% ******"<<endl; 11 cout<<"***** 5 ******** 25% ******"<<endl; 12 cout<<"***************************"<<endl; 13 cout<<"請輸入要購買的書的數目:"; 14 cin>>i; 15 if(i%5!=3) 16 { 17 a=i/5; 18 b=30*a; 19 c=i%5; 20 if(c==0) 21 { 22 sum=b; 23 } 24 if(c==1) 25 { 26 sum=b+8; 27 } 28 else if(c==2) 29 { 30 sum=b+16*0.95; 31 } 32 else if(c==3) 33 { 34 sum=b+24*0.9; 35 } 36 else if(c==4) 37 { 38 sum=b+32*0.8; 39 } 40 41 } 42 else if(i==3) 43 { 44 sum=24*0.9; 45 } 46 else if(i%5==3&&i!=3) 47 { 48 a=i/5; 49 b=30*(a-1); 50 c=i%5; 51 sum=b+32*0.8*2; 52 } 53 cout<<"最劃算的價格為:"<<sum<<endl; 54 }

?

四、運行截圖

五、結論與體會

? ? 經過查閱資料,我知道了這個題目的算法是貪心算法,網上介紹了很多關于貪心算法,也有很多的類似題目,通過本次課堂練習,基本了解了這個題目的意思和解決辦法,

但是,還是有很多地方需要自己去學習,希望以后能夠寫出更好的算法解決這類問題。

?

轉載于:https://www.cnblogs.com/yuji5656/p/4428318.html

總結

以上是生活随笔為你收集整理的课堂练习之买书问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。