1.利用公式计算pi的值pi=4*(1-1/3+1/5-1*7+1/9...)近似值,直到括号最后一项小于1e-6为止。
int i; //分数项的分母
double pi, t; //pi记录结果。t分数项的大小
int s; //符号位
pi = 0; t = 1; i = 1; s = 1;
while (t > 1e-6) { //循环直至分数项达到要求(小于1e-6)10的负六次方
pi = pi + s * t; //累加计算
i = i + 2; //分数项的分母+2(1、3、5、7、9)
s = -s; //符号位变换,每计算一次变号
t = 1.0 / i; //分数项
}
pi = pi * 4; //结果×4
cout << "pi=" << pi << endl;
return 0;
2.输出100-200之间的质数:
for (int i = 101; i <= 200; i += 2) { //二重循环,偶数一定不是质数,从101开始迭代
bool iszhi = true; //是否是质数的标志
cout << endl;
for (int j = 2; j < i; ++j) //从2开始循环计算,验证j是否是i的因数
{
if ((i % j) == 0) //判断j是否是数字i的因数
{
iszhi = false; //设置标志位,i有因数j,所以不是质数
i += 2; //i加2判断下一个数
break; //跳出内层循环,判断下一个i
}
}
if (iszhi) //输出
cout << "100-200之间的质数有:" << i << endl;
}
return 0;
1.break跳出一层for循环
2.双重循环中 设置了标志位bool iszhi
来达到【多次if判断条件,然后else】的效果。
3.符号位的巧妙设置s=-s
每次计算改变分数项的符号。