c++一道题:求1-n中与n互质的数,输入n,输出一行一个数值 - 爱问答

(爱问答)

c++一道题:求1-n中与n互质的数,输入n,输出一行一个数值

求1-n中与n互质的数,输入n,输出一行一个数值

样例输入:

29

输出:

6

c语言编了一个,仅供参考,源代码如下:


#include<stdio.h>


int gcd(int a,int b)                         //该函数求a,b两数的最大公因数

{

     int t;

 

     while (b != 0)                          //使用“辗转相除法”求解最大公因数

     {

          t = b;

          b = a % b;

          a = t;

     }

     return a;                                   //返回a,b两数的最大公因数

}

 

int main()

{

     int i;                                         //循环变量

     int n;                                        //n,输入参数

     int gcd_ab;                              //最大公因数

     int number=0;                         //互质数计数

 

     printf("Please INPUT A Positive Number:  ");

     scanf("%d",&n);                       //输入n

 

     for(i=1; i<n; i++)                    //从1开始到n-1循环,依次判断i和n是否互质(n必然与n不互质)

     {

          gcd_ab = gcd(n, i);             //计算i和n的最大公因数

          if (gcd_ab == 1)                 //如果两个数a,b的最大公因数为1,两数互质

               number++;                   //如果i和n互质,计数加1

     }

//输出结果

     printf("From 1 to %d, There are(is) %d numbers which is coprime with %d.",n, number, n);

     return 0;

}


输出结果如下:

c++一道题:求1-n中与n互质的数,输入n,输出一行一个数值

下一篇:5g会不会出宽带

上一篇:求一段Python代码,计算X(数字)是2的几次方?

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?