zoukankan      html  css  js  c++  java
  • 最大公约数

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

    方法一:

     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 }

  • 相关阅读:
    原生js中,call(),apply(),bind()三种方法的区别
    jQuery回溯!!!!!!!
    java中异常类与类别
    Java 多线程(并发)
    Java中反射与常用方法
    漫谈计算机构成
    java语言特性(相比C++)
    初级排序算法学习笔记
    java中参数传递
    关于类的知识
  • 原文地址:https://www.cnblogs.com/bearkid/p/7112131.html
Copyright © 2011-2022 走看看