鱼C论坛

 找回密码
 立即注册
查看: 1411|回复: 2

[已解决]问题求助

[复制链接]
发表于 2021-10-26 17:27:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
编写一个程序读取整数,直到输入0为止。 在输入结束后,程序应该报告输入的偶数(不包括0)的总数、偶数的平均值、奇数的总数和奇数的平均值。  
最佳答案
2021-10-26 22:54:50
#include<iostream>
#include<algorithm>
#include<vector>
#include<numeric>
using namespace std;


int main(){
    vector<int> even;
    vector<int> single;
    while(1){
        int tem=0;
        cin>>tem;
        if(tem==0){break;}

        if(tem%2 == 0){
            even.emplace_back(tem);
        }else{
            single.emplace_back(tem);
        }
    }
    double even_avg=(double)accumulate(even.begin(),even.end(),0)/(double)even.size();
    cout<<"偶数总数: "<<even.size()<<" "<<"偶数平均数"<<even_avg<<endl;
    double single_avg=(double)accumulate(single.begin(),single.end(),0)/(double)single.size();
    cout<<"奇数总数"<<single.size()<<"奇数平均数"<<single_avg<<endl;
    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-10-26 19:18:52 | 显示全部楼层
#include <stdio.h>

int main()
{
    int num, A = 0, a = 0, B = 0, b = 0;
    while(1){
        scanf("%d", &num);
        if(num == 0) break;
        else{
            if(num%2){
                A += num;
                a ++;
            }
            else{
                B += num;
                b ++;
            }
        }
    }
    printf("偶数总数:%d\n偶数平均值:%f\n奇数的总数:%d\n奇数平均值:%f", B, (float)B/b, A, (float)A/a);
    return 0;
}
输入/输出:
1 2 3 4 5 6 7 8 9 0
偶数总数:20
偶数平均值:5.000000
奇数的总数:25
奇数平均值:5.000000
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-26 22:54:50 | 显示全部楼层    本楼为最佳答案   
#include<iostream>
#include<algorithm>
#include<vector>
#include<numeric>
using namespace std;


int main(){
    vector<int> even;
    vector<int> single;
    while(1){
        int tem=0;
        cin>>tem;
        if(tem==0){break;}

        if(tem%2 == 0){
            even.emplace_back(tem);
        }else{
            single.emplace_back(tem);
        }
    }
    double even_avg=(double)accumulate(even.begin(),even.end(),0)/(double)even.size();
    cout<<"偶数总数: "<<even.size()<<" "<<"偶数平均数"<<even_avg<<endl;
    double single_avg=(double)accumulate(single.begin(),single.end(),0)/(double)single.size();
    cout<<"奇数总数"<<single.size()<<"奇数平均数"<<single_avg<<endl;
    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-22 18:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表