|
本帖最后由 Ethan 于 2022-7-19 12:20 编辑
小奇的志向是成为一名医生,大学专业是医药学。某天课上做实验,实验内容是:传统药物是否比灭活疫苗效果更好。为了对比疗效,小奇采用了对照实验的方式进行。假设传统药物的有效率为x,灭活疫苗的有效率为y,如果x减y大于5%则效果更好,如果y减x大于5%则效果更差,其他情况效果相同。小奇做了n组对照实验,其中一组采用灭活疫苗,其它n-1组为各种不同方法的传统方法。
第一行为整数n(1<n≤20);其余n行每行两个整数,第一个整数是实验的组数(小于等于10000),第二个整数为有效的组数。
这n行数据中,第一行为灭活疫苗的数据,其余各行为传统药物的数据。
有n-1行输出,分别表示对应传统药物的效果:如果效果更好,输出better;如果效果更差,输出worse;否则输出same。
5
125 99
112 89
145 99
99 97
123 98
same
worse
better
same
本题即使编程完成,可能只有90分,请分析原因。
提示:浮点数计算精度问题。
入门 其他 循环结构
题解:
- #include<bits/stdc++.h>
- using namespace std;
- int main(){
- int total,valid,num;
- double a,b;
- cin>>num;
- cin>>total>>valid;
- a=(double)valid/total*100;
- for(int n=1;n<num;n++){
- cin>>total>>valid;
- b=(double)valid/total*100;
- if((b-a)>5)
- cout<<"better"<<endl;
- else if((a-b)>5)
- cout<<"worse"<<endl;
- else
- cout<<"same"<<endl;
- }
- return 0;
- }
复制代码
|
|