计算1/1-1/2+1/3-1/4+1/5......+1/99-1/100的值
2018-03-26 18:48
393 查看
计算这个算式的值,一般方法就是将所有分母为奇数的分数加起来,再将所有分母为偶数的分数加起来,最后用分母为奇数的分数和减去分母为偶数的分数和,即为最后的答案。具体实现代码如下
#include<stdio.h>
#include<stdlib.h>int main()
{
double i=0;
double j = 0;
double max1 = 0, max2 = 0, max = 0; for (i = 1; i <= 99; i += 2) //分母为奇数的循环
{
max1 = max1 + (1 / i); //分母为奇数的各个数相加
} for (j = 2; j <= 100; j += 2) //分母为偶数的循环
{
max2 = max2 + (1 / j); //分母为偶数的各个数相加
} max = max1 - max2; //分母为奇数各个数之和减去分母为偶数的各个数之和
printf("1/1-1/2+1/3-1/4+1/5...+1/99-1/100的值为:%lf\n", max); system("pause");
return 0;
}
下面是对上面的方法进行了优化,只用了一次循环。即使用一个标记flag,每循环一次,都将flag的值置为相反数,这样就实现了交错相加减的目的。具体实现代码如下
#include<stdio.h>
#include<stdlib.h>int main()
{
int i = 0;
int flag = 1; //作为标记
double sum = 0.0;
for (i = 1; i <= 100; i++)
{
sum = sum + flag*1.0 / i; //除法运算符只要有一边是小数,则为小数运算。注意这里不能用整数1来除
flag = -flag;
}
printf("%lf", sum);
system("pause");
return 0;
}
#include<stdio.h>
#include<stdlib.h>int main()
{
double i=0;
double j = 0;
double max1 = 0, max2 = 0, max = 0; for (i = 1; i <= 99; i += 2) //分母为奇数的循环
{
max1 = max1 + (1 / i); //分母为奇数的各个数相加
} for (j = 2; j <= 100; j += 2) //分母为偶数的循环
{
max2 = max2 + (1 / j); //分母为偶数的各个数相加
} max = max1 - max2; //分母为奇数各个数之和减去分母为偶数的各个数之和
printf("1/1-1/2+1/3-1/4+1/5...+1/99-1/100的值为:%lf\n", max); system("pause");
return 0;
}
下面是对上面的方法进行了优化,只用了一次循环。即使用一个标记flag,每循环一次,都将flag的值置为相反数,这样就实现了交错相加减的目的。具体实现代码如下
#include<stdio.h>
#include<stdlib.h>int main()
{
int i = 0;
int flag = 1; //作为标记
double sum = 0.0;
for (i = 1; i <= 100; i++)
{
sum = sum + flag*1.0 / i; //除法运算符只要有一边是小数,则为小数运算。注意这里不能用整数1来除
flag = -flag;
}
printf("%lf", sum);
system("pause");
return 0;
}
相关文章推荐
- C语言:计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值
- 1.将数组A中的内容和数组B中的内容进行交换2.计算1 / 1 - 1 / 2 + 1 / 3 - 1 / 4 + 1 / 5 …… + 1 / 99 - 1 / 100 的值
- 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值。
- 计算1- 1 / 2 + 1 / 3 - 1 / 4 + 1 / 5 + ........ + 1 / 99 - 1 / 100
- 计算1/1-1/2+1/3-1/4+1/5...+1/99-1/100的值
- 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值。
- 计算1/1-1/2+1/3-1/4+1/5········+1/99-1/100的值
- 计算1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100的值
- 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值
- 1.计算1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100的值
- 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值
- 关于 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值的体会
- 【C语言】计算1-1/2+1/3-.......+1/99-100的值
- 计算1-1/2+...+1/99-1/100
- 计算1/1-1/2+1/3-...+1/99-1/100的值
- 计算1-1/2+1/3-1/4+1/5-……+1/99-1/100的值
- C计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值
- 字符计算 矩阵转置 1-1/2+1/3-1/4+......+1/99-1/100
- 计算1*2*3*+3*4*5+……+99*100*101的值
- 计算1/1-1/2+1/3-1/4=1/5.......+1/99-1/100的值