EularProject 73:Counting fractions in a range

来源:互联网 发布:淘宝域名怎么设置 编辑:程序博客网 时间:2024/06/15 13:46

Andrew Zhang
Nov 11, 2017

Consider the fraction, n/d, where n and d are positive integers. If n < d and HCF(n,d)=1, it is called a reduced proper fraction.

If we list the set of reduced proper fractions for d ≤ 8 in ascending order of size, we get:

1/8, 1/7, 1/6, 1/5, 1/4, 2/7, 1/3, 3/8, 2/5, 3/7, 1/2, 4/7, 3/5, 5/8, 2/3, 5/7, 3/4, 4/5, 5/6, 6/7, 7/8

It can be seen that there are 3 fractions between 1/3 and 1/2.

How many fractions lie between 1/3 and 1/2 in the sorted set of reduced proper fractions for d ≤ 12,000?

Answer:
7295372
Completed on Fri, 10 Nov 2017, 17:45

Code:

#include <iostream>using namespace std;int gcd(int a, int b){    int c = a % b;    if(c == 0) {        return b;    } else {        return gcd(b, c);    }}int main(){    int d = 12000;    int result = 0;    for(int i = 4; i <= d; i++) {        int n1 = i / 3;        int n2 = i / 2;        for(int j = n1; j <= n2; j++) {            if((3 * j <= i) || (2 * j == i)) {                continue;            }            if(gcd(i, j) == 1) {                //cout<<j<<" "<<i<<endl;                result++;            }        }    }    cout<<result<<endl;    system("pause");    return 0;}
原创粉丝点击