求最大公约数

1.辗转相除法

先将两个整数a与b进行相除,如果余数为0(a%b==0),则b为两数的最大公约数;如果不等于0,则将b赋值给a,将余数赋值给b,在对a与b进行相除,直到余数为0时终止(a%b==0),则b为最大公约数。

1 #include<stdio.h>
2 int main()
3 {
4 //方法二:辗转相除法
5 int a, b, i;
6 printf("请输入两个整数:\n");
7 printf("a=");
8 scanf("%d", &a);
9 printf("b=");
10 scanf("%d", &b);
11 i = a % b;
12 while(i != 0)
13 {
14 a = b;
15 b = i;
16 i = a % b;
17 }
18 printf("%d",b);
19
20 return 0;
21 }
https://www.cnblogs.com/cuckoo-/p/10267614.html

2.伪代码

Write"Enter the integer a"
   Read integera
   Write"Enter the integer b"
   Read integerb
   Set remainder to integera REM integerb
   WHILE(remainder is not zero)
         Set integera to integerb
         Set integerb to remainder
         Set remainder to integera REM integerb
   Write"The greatest common divisor is"
   Write integerb

posted @ 2021-11-06 11:40  20211304王琛凯  阅读(15)  评论(0编辑  收藏  举报