题目:数据统计、平均值、方差 2. 基本要求: 要求用C++语言编程,在Visual C++环境下调试完成。

设计方法和基本原理:
问题功能描述:
键盘输入20个数据。
统计1:统计其中奇数个数是多少;
统计2:统计其中素数个数是多少;
统计3:统计大于平均值的数据是多少;
对奇数位置数据计算平均值;
对偶数位置数据计算方差。

#include <iostream>
using namespace std;

const int N=20;

//统计1
int count1(double arr[])
{
int sum=0;
for(int i=0;i<N;i++)
if(((int)arr[i])%2==1)
sum++;

return sum;
}

//统计2
int count2(double arr[])
{
int sum=0;
for(int i=0;i<N;i++)
if(((int)arr[i])%2==0)
sum++;

return sum;
}

double avg(double arr[])
{
double sum=0;
for(int i=0;i<N;i++)
sum+=arr[i];

return sum/N;
}

//统计3
int count3(double arr[])
{
int sum=0;
double avgnum;
avgnum=avg(arr);

for(int i=0;i<N;i++)
if(arr[i]>avgnum)
sum++;

return sum;
}

//计算奇数位置的平均值
double avgodd(double arr[])
{
double sum=0;
for(int i=0;i<N;i=i+2)
{
sum+=arr[i];
}
return sum*2/N;
}

//计算偶数位置的方差
double varEven(double arr[])
{
double sum=0,avgnum;
for(int i=1;i<N;i=i+2)
{
sum+=arr[i];
}
avgnum=sum*2/N;

sum=0;
for(int i=1;i<N;i=i+2)
{
sum+=(arr[i]-avgnum)*(arr[i]-avgnum);
}
return sum;
}

void main()
{
double arr[N];

cout<<"请输入"<<N<<"个数:"<<endl;
for(int i=0;i<N;i++)
{
cin>>arr[i];
}
cout<<"奇数个数是:"<<count1(arr)<<endl;
cout<<"偶数个数是:"<<count2(arr)<<endl;
cout<<"大于平均值的数的个数是:"<<count3(arr)<<endl;
cout<<"奇数位置平均值是:"<<avgodd(arr)<<endl;
cout<<"偶数位置方差是:"<<varEven(arr)<<endl;
}追问

在vc上运行了一下,有两处错误 c:\program files\microsoft visual studio\myprojects\qq\ww.cpp(73) : error C2374: 'i' : redefinition; multiple initialization
c:\program files\microsoft visual studio\myprojects\qq\ww.cpp(66) : see declaration of 'i'
c:\program files\microsoft visual studio\myprojects\qq\ww.cpp(94) : fatal error C1004: unexpected end of file found
Error executing cl.exe.

追答

double varEven(double arr[])
{
int i;
double sum=0,avgnum;
for(i=1;i<N;i=i+2)
{
sum+=arr[i];
}
avgnum=sum*2/N;

sum=0;
for(i=1;i<N;i=i+2)
{
sum+=(arr[i]-avgnum)*(arr[i]-avgnum);
}
return sum;
}

把这个方法改下。

追问

你扣扣号多少?

追答

280429983

追问

真的很感谢你啊~~~谢谢

追答

满意的话,采纳下就可以了`

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-06-25
这些都不难,建议你自己写代码实现。
第2个回答  2012-06-25
loop 循环吧
第3个回答  2012-06-26
你不会是河工的吧??

...基本要求: 要求用C++语言编程,在Visual C++环境下调试完成。_百度知 ...
cout<<"奇数位置平均值是:"<<avgodd(arr)<<endl;cout<<"偶数位置方差是:"<<varEven(arr)<<endl;}

...一、题目:数据统计、平均值、方差 二、基本要求: 要求用_百度...
p[z]=(1.0\/n*(pow(k[z],2)));这里是1.0,不然直接用1除的话,小数全部都会转变成0,就得不到答案了还有最重要一点,数组是从0开始到n-1,不是从1开始到n

C++编程求助,对数,平均值等
mid_number = mid(

数据处理,用C++或者Java编写,求一组数的方差均值众数标准差中位数等...
平均数的大小与一组数据里的每个数据均有关系,其中任何数据的变动都会相应引起平均数的变动;众数则着眼于对各数据出现的次数的考察,其大小只与这组数据中的部分数据有关,当一组数据中有不少数据多次重复出现时,其众数往往是我们关心的一种统计量;中位数则仅与数据排列位置有关,当一组数据从小到大排...

在C++中如何用C++的语言来表示求均值和标准差? 奖励10分!
\/*求所有数据平均值*\/ int average( dataList * list ){ int sum = 0;for ( int i = 0; i < list->length; i++ ){ sum += list->data[i];} return sum\/list->length;} \/*求标准差*\/ int var( dataList * list ){ int averg;int varX = 0; \/\/ 方差 int stdDev; \/\/...

C++求平方差怎么编,主要是题目要求不能用数组啊
用这个公式算,不需要把xi存下来,只用一次

求C++语言编程生成满足正态分布(期望为2,方差为10)在0~5区间上的随机...
\/\/ 求均值为miu,方差为sigma的正太分布函数在x处的函数值 double normal(double x, double miu,double sigma){ return 1.0 \/ sqrt(2.0 * pi) \/ sigma * exp(-1.0 * (x - miu) * (x - miu) \/ (2.0 * sigma * sigma));} \/\/按照矩形区域在函数值曲线上下位置分布情况得到正太...

c++ 输入N个数字 在输入“0“的时候 输入结束,要求程序输出N 总和SUM...
==> 120 请输入数字 ==> 20.86 请输入数字 ==> 0 输入的数字个数:7 总和: 846.50000 平均值: 120.92857 方差: 8736.93050 标准差: 93.47155 最大值: 300.00000 最小值: 20.86000 请按任意键继续. . ....

大数据技术包括哪些
大数据技术包括数据收集、数据存取、基础架构、数据处理、统计分析、数据挖掘、模型预测、结果呈现。1、数据收集:在大数据的生命周期中,数据采集处于第一个环节。根据MapReduce产生数据的应用系统分类,大数据的采集主要有4种来源:管理信息系统、Web信息系统、物理信息系统、科学实验系统。2、数据存取:大数据...

哪位大哥大姐能告诉一下大学计算机专业最先学什么编程语言,谢谢了
(2)Visual Basic 的数据类型太少,而且不支持指针,这使得它的表达能力很有限。 (3)Visual Basic 不是真正的编译型语言,它产生的最终代码不是可执行的,是一种伪代码。它需要一个动态链接库去解释执行,这使得Visual Basic 的编译速度大大变慢。 综述:方案一适合初涉编程的朋友,它对学习者的要求不高,几乎每个人...

相似回答
大家正在搜