|
https://oj.singera.cn/dist/quesInfo?problem_id=1071
(题目链接)
题目详见OJ系统
根据题目描述:
要求比较多组传统疫苗和一组灭活疫苗
首先
算出灭活疫苗的效率
逐一与传统疫苗的效率进行比较
最好算出百分比
[backcolor=rgba(234, 234, 234, 0.46)]本题即使编程完成,可能只有90分,请分析原因。
[backcolor=rgba(234, 234, 234, 0.46)]提示:浮点数计算精度问题。
[backcolor=rgba(234, 234, 234, 0.46)]本提示摘自OJ
[backcolor=rgba(234, 234, 234, 0.46)]因为两数相除的精度问题
[backcolor=rgba(234, 234, 234, 0.46)]所以商*100后比较更准
[backcolor=rgba(234, 234, 234, 0.46)]
[backcolor=rgba(234, 234, 234, 0.46)]
[backcolor=rgba(234, 234, 234, 0.46)]
[backcolor=rgba(234, 234, 234, 0.46)]所以
[backcolor=rgba(234, 234, 234, 0.46)]我们开始吧
- #include<iostream>
- #include<cstdio>
- using namespace std;
- int main(){
- double x,y;
- double num1[100],num2[100];
- int n,i;
- double a,b;
- cin>>n;
- cin>>x>>y;
- for (i=0;i<n-1;i++){
- cin>>num1[i]>>num2[i];
- }
- a = y/x*100;
- for (i=0;i<n-1;i++){
- b = num2[i]/num1[i]*100;
- if (b-a>5 and b>a)
- cout<<"better"<<endl;
- else if (a-b>5 and a>b)
- cout<<"worse"<<endl;
- else
- cout<<"same"<<endl;
- }
- return 0;
- }
复制代码 (代码已AC) |
|