列出真分数序列

列出真分数序列:

按递增顺序依次列出所有分母为40.分子小于40的最简分数。

解题思路:

利用for循环遍历所有分子的可能,在for循环中利用辗转相除法求出最大公约数,若最大公约数为1则输出,否则继续循环。

代码:

#include<iostream>

#include<iomanip>

using namespace std;

int main()

{

    int i,m,n,temp,x=0;

    cout<<"The fraction serials with demominator 40 is:"<<endl;

    for(i=1;i<40;i++)

    {

        m=40;

        n=i;

        while(n!=0)

        {

            temp=m%n;

            m=n;

            n=temp;

        }

        if(m==1)

        {

            x++;

            cout<<setw(2)<<i<<"/40  ";

            if(x%8==0)

                cout<<endl;

        }

    }

    return 0;

}

 

 

posted @ 2023-05-10 14:05  不如喝点  阅读(19)  评论(0编辑  收藏  举报