2017蓝桥杯模拟题购物单

 题目:购物单

 

小明刚刚找到工作,老板人很好,只是老板夫人很爱购物。老板忙的时候经常让小明帮忙到商场代为购物。小明很厌烦,但又不好推辞。

 

这不,XX大促销又来了!老板夫人开出了长长的购物单,都是有打折优惠的。

小明也有个怪癖,不到万不得已,从不刷卡,直接现金搞定。

现在小明很心烦,请你帮他计算一下,需要从取款机上取多少现金,才能搞定这次购物。

 

取款机只能提供100元面额的纸币。小明想尽可能少取些现金,够用就行了。

你的任务是计算出,小明最少需要取多少现金。

以下是让人头疼的购物单,为了保护隐私,物品名称被隐藏了。

--------------------

****     180.90       88

****      10.25       65

****      56.14        9

****     104.65        9

****     100.30       88

****     297.15       半价

****      26.75       65

****     130.62       半价

****     240.28       58

****     270.62        8

****     115.87       88

****     247.34       95

****      73.21        9

****     101.00       半价

****      79.54       半价

****     278.44        7

****     199.26       半价

****      12.97        9

****     166.30       78

****     125.50       58

****      84.98        9

****     113.35       68

****     166.57       半价

****      42.56        9

****      81.90       95

****     131.78        8

****     255.89       78

****     109.17        9

****     146.69       68

****     139.33       65

****     141.16       78

****     154.74        8

****      59.42        8

****      85.44       68

****     293.70       88

****     261.79       65

****      11.30       88

****     268.27       58

****     128.29       88

****     251.03        8

****     208.39       75

****     128.88       75

****      62.06        9

****     225.87       75

****      12.89       75

****      34.28       75

****      62.16       58

****     129.12       半价

****     218.37       半价

****     289.69       8

--------------------

 

需要说明的是,88折指的是按标价的88%计算,而8折是按80%计算,余者类推。

特别地,半价是按50%计算。

 

请提交小明要从取款机上提取的金额,单位是元。

答案是一个整数,类似4300的样子,结尾必然是00,不要填写任何多余的内容。

 

 

特别提醒:不许携带计算器入场,也不能打开手机。

代码:

这些数都是定的,我们只需double数组存下来,每个数乘以他的折扣,相加即可,至于保留两个0,且能够买完东西,只需

if(sum%100!=0)

{

   cout<<(sum/100+1)*100<<endl;

}

else

cout<<sum<<endl;

就可以了。

#include<iostream>

using namespace std;

int main()

{

int n;

double a[1000]={139.33,141.16,154.74,59.42,85.44,293.70,261.79,11.30,268.27,128,29,251.03,208.39,128.88,62.06,225.87,12.89,34.28,62.16,129.12,218.37,289.69};

double b[1000]={0.65,0.78,0.8,0.8,0.68,0.88,0.65,0.88,0.58,0.88,0.8,0.75,0.75,0.9,0.75,0.75,0.75,0.58,0.5,0.5,0.8};

long long sum=0.0;

for(int i=0;i<21;i++)

{

sum+=a[i]*b[i];

}

if(sum%100!=0)

{

   cout<<(sum/100+1)*100<<endl;

}

else

cout<<sum<<endl;

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值