1/1 + 1/2 + 1/4 + 1/8 + 1/16 + …
每项是前一项的一半,如果一共有20项,
求这个和是多少,结果用分数表示出来。
类似:
3/2
当然,这只是加了前2项而已。分子分母要求互质。
程序说明:
可以用等比数列的前n项和公式,也可以直接模拟来做。
答案:1048575/524288
代码如下:
#include <iostream>
#include <cstdio>
using namespace std;
int a = 1, b = 1;
int gcd(int a, int b) {
return b ? gcd(b, a % b) : a;
}
int main() {
for(int i = 2; i <= 20; i++) {
a = a * 2 + 1;
b *= 2;
}
cout<<a / gcd(a, b)<<"/"<<b / gcd(a, b);
return 0;
}