求助 大佬们 关于for循环的问题 谢谢~!
先放上原题 镇楼
程序代码:#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
///////////////////////////////////////////////////////////////////////////
double rand_u(double Lower, double Upper) // 随机0-1
{
double r=rand()/(double)(RAND_MAX);
if (Lower<r&&r<Upper)
return r;
}
/////////////////////////////////////////////////////////////////////////////
double pci(double mean, double variance, int n_samples)
{
double s=sqrt(variance);
double percentage_confidence_interval = ((1.96*s)/sqrt(n_samples))*200;
return percentage_confidence_interval;
}
/////////////////////////////////////////////////////////////////////////////
int main ()
{
srand((unsigned)time(NULL));
double mean,variance,sum,sum_square_data;
double data=rand_u(0.0,1.0);
int n_samples;
int i;
for(int n_samples=0;pci(mean,variance,n_samples)>5;n_samples++)
{
if (n_samples==0) continue;
sum +=data;
mean =sum/(n_samples);
sum_square_data += data*data;
variance = sum_square_data/(n_samples)-mean*mean;
i++;
}
printf("samples =%d\n",i);
printf("sample mean = %lf\n",mean);
printf("sample variance = %lf\n",variance );
printf("percentage confidence interval =%lf \n", pci( mean,variance,n_samples));
return 0;
}这是结果
期待的运行结果是
//////////////////////////////////////////////////////////////////////
好了 概括 一下自己的一个问题是 我想用
for循环 中的 循环变量(n_samples) 作为某函数(pci)的 输入值
通过循环条件(<5) 找到满足 pci<5 时的 n_samples
并且在最后 输出 n_samples pci 等
但是我一直得不到老师要求的答案
求助大佬们 谢谢~
[此贴子已经被作者于2018-4-22 09:21编辑过]







