18信科2龚思佳


私信TA

用户名:uq_33103784766

访问量:16434

签 名:

等  级
排  名 207
经  验 6263
参赛次数 7
文章发表 121
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

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

这不,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,不要填写任何多余的内容。


方法一:

1611904748753369.png

方法二:(c++)

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>//atof
using namespace std;
int main(){
	double total=0;
	double price;
	while(1){
		
		string name,scount;
		char ccount[3];
		double money;
		cin >>name;
		if(name=="0")
		  break;
		cin >>money>>scount;
		if(scount=="半折"||scount=="半价")
		  scount="5折";
		  strcpy(ccount,scount.c_str()); 
		//count=count.substr(0,count.length()-2);
	    double x=atof(ccount);//string转换成double
	    if(x>0&&x<10){
	    	price=money*x*0.1;
	    	total+=price;
	    }
	    else{
	    	price=money*x*0.01;
	    	total+=price;
	    }
		 cout <<"单价"<<" "<<price<<endl;
	} 
		cout <<"总额"<<" "<<total<<endl; 
		int much=((int)total/100+1)*100;   
		cout <<"故需要取"<<" "<<much<<endl;
	return 0;
}


 

0.0分

1 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答

代码解释器

  评论区