60分C++

P1422 小玉家的电费

```cpp else if(a>150){ cout<<fixed<<setprecision(1)<<50*0.4463+(a-150)*0.4633; } ``` 这里应该是 ```cpp else if(a>150){ cout<<fixed<<setprecision(1)<<150*0.4463+(a-150)*0.4663; } ```
by ZHOUzihan415 @ 2022-07-04 21:01:39


@[start_dream](/user/745088) ```cpp }else if(a>150){ cout<<fixed<<setprecision(1)<<50*0.4463+(a-150)*0.4633; ``` 的 0.4633 是怎么回事?
by Jerrycyx @ 2022-07-04 21:01:53


两处数字打错了,手动模拟一下样例就能找到
by ZHOUzihan415 @ 2022-07-04 21:02:32


@[start_dream](/user/745088)
by ZHOUzihan415 @ 2022-07-04 21:02:57


谢谢大佬们!!已经通过了
by F_oR_es_T @ 2022-07-04 21:05:18


//AC code: You'd better use "(double)(expression)" when it comes to "%.nf" of "printf". By the way, acquire the information above the code more cautiously next time. eg:0.4633--0.4663. 50--150.// ```cpp #include<iostream> #include<iomanip> ``` using namespace std; int main(){ double a,c; cin>>a; if(a>400){ c=(double)(150*0.4463+250*0.4663+(a-400)*0.5663); printf("%.1f",c); }else if(a>150){ c=(double)(150*0.4463+(a-150)*0.4663); printf("%.1f",c); }else{ c=(double)(0.4463*a); printf("%.1f",c); } return 0; }
by JASONYAN @ 2022-07-04 21:22:50


|