• 最大公约数


    求两数的最大公约数,可采用欧几里得的方法:只要两数不相等,就反复用大数减小数,直到相等为止,此相等的数就是两数的最大公约数。

    方法一:

     1 #include<iostream>
     2 #include<fstream>
     3 using namespace std; //声明gcd函数,该函数用来计算两数的最大公约数
     4 int gcd(int,int);
     5 int main()
     6 {
     7     int x,y;
     8     while(cin>>x>>y)
     9     {
    10         cout<<gcd(x,y)<<endl;
    11     }
    12     return 0;
    13 }
    14 int gcd(int x,int y)
    15 {
    16     while(x!=y)
    17     {
    18         if(x>y)x=x-y;
    19         else y=y-x;
    20     }
    21     return x;
    22 }

    方法二:

    1 #include<bits/stdc++.h>//表示包括编程中经常用到的头文件(有c和c++)

    2 using namespace std;

    3 typedef int i; //typedef用来为复杂的声明定义简单的别名,其中的i表示int(如定义longlong型:typedef long long ll;)

    4 i gcd(i x,i y)

    5 {

    6 return y==0?x:gcd(y,x%y); //若y=0,则输出x,若不为零,则结合第6到11行进行gcd(y,x%y)中的运算,运用的是辗转相除法

    7 }

    8 i min(i x,i y)

    9 {

    10 return x<y?x:y; //若x<y,则输出x,否则输出y

    11 }

    12 int main()

    13 {

    14 i a,b;

    15 cin>>a>>b;

    16 i bns=0;

    17 bns=gcd(a,b);

    18 cout<<bns<<endl;

    19 }

  • 相关阅读:
    C++_学习随笔_牛郎织女迷宫
    UE4复习5_蓝图接口简单应用
    UE4复习4_射线检测
    今日份学习: Spring中使用AOP并实现redis缓存?
    动态代理,AOP和Spring
    今日份学习:初步的springboot
    HTML常用标签
    关于类的笔记
    关于编码的一个笔记
    Java Socket例程3 UDP
  • 原文地址:https://www.cnblogs.com/bearkid/p/7112131.html
Copyright © 2020-2023  润新知