返回列表 發帖

因數分解 (七) - 兩數求最大公因數 (break敘述)

本帖最後由 tonyh 於 2014-12-20 11:13 編輯

利用break敘述, 於符合條件時, 立即跳出迴圈.

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int x, y, smaller, maxf;
  7.     cout<<"請輸入第一個數: ";
  8.     cin>>x;
  9.     cout<<"請輸入第二個數: ";
  10.     cin>>y;
  11.     smaller=(x<y)?x:y;
  12.     for(int i=smaller; i>=1; i--)
  13.     {
  14.          if(x%i==0 && y%i==0)
  15.          {
  16.               maxf=i;
  17.               break;
  18.          }
  19.     }
  20.     cout<<x<<"與"<<y<<"的最大公因數是: "<<maxf<<endl;
  21.     system("pause");
  22.     return 0;
  23. }
複製代碼
附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int a,b,small,max;
  7.     cout<<"請輸入第一個數:";
  8.     cin>>a;
  9.     cout<<"請輸入第二個數:";
  10.     cin>>b;
  11.     small=(a<b)?a:b;
  12.    
  13.     int i=small;
  14.     while(i>=1)
  15.     {
  16.         if(a%i==0 and b%i==0)
  17.         {
  18.             max=i;
  19.             break;
  20.         }
  21.         i--;
  22.         
  23.     }
  24.     cout<<a<<"與"<<b<<"的最大公因數為"<<max<<endl;
  25.    
  26.     system("pause");
  27.     return 0;
  28. }
複製代碼

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int x, y, smaller, maxf;
  7.     cout<<"請輸入第一個數: ";
  8.     cin>>x;
  9.     cout<<"請輸入第二個數: ";
  10.     cin>>y;
  11.     smaller=(x<y)?x:y;
  12.     cout<<x<<"與"<<y<<"的公因數有: ";
  13.     for(int i=smaller; i>=1; i--)
  14.     {
  15.          if(x%i==0 && y%i==0)
  16.          {
  17.               maxf=i;
  18.               break;
  19.          }   
  20.     }
  21.     cout<<x<<"與"<<y<<"的最大公因數是:"<<maxf<<endl;
  22.     system("pause");
  23.     return 0;
  24. }
複製代碼

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int x, y, smaller, maxf;
  7.     cout<<"請輸入第一個數: ";
  8.     cin>>x;
  9.     cout<<"請輸入第二個數: ";
  10.     cin>>y;
  11.     smaller=(x<y)?x:y;
  12.     cout<<x<<"與"<<y<<"的公因數有: ";
  13.     for(int i=smaller; i>=1; i--)
  14.     {
  15.          if(x%i==0 && y%i==0)
  16.          {
  17.               maxf=i;
  18.              break;
  19.          }   
  20.     }
  21.     cout<<x<<"與"<<y<<"的最大公因數是:"<<maxf<<endl;
  22.     system("pause");
  23.     return 0;
  24. }
複製代碼

TOP

  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.    int x,y,sm,m;
  7.    cout<<"請輸第一個數";
  8.    cin>>x;
  9.    cout<<"請輸第二個數";
  10.    cin>>y;
  11.    sm=(x<y)?x:y;

  12.       
  13.    for( int i=sm;i>=1 ;i--)
  14.    {
  15.       
  16.        if(x%i==0 && y%i==0)
  17.        {         
  18.            
  19.            
  20.            m=i;
  21.            break;
  22.        }
  23.    }
  24.    
  25.    cout<<x<<"與"<<y<<"的最大公因數是:"<<m<<endl;
  26.    system("pause");
  27.    return 0;
  28. }
複製代碼

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int x,y,a,b=0;
  7.     cout<<"請輸入兩個數"<<endl;
  8.     cin>>x;
  9.     cin>>y;
  10.     a=(x<y)?x:y;
  11.     for(int i=a ;i>=1;i--)
  12.     {
  13.          if(x%i==0 && y%i==0)
  14.          {
  15.               b=i;
  16.               break;
  17.          }
  18.     }
  19.     cout<<b;
  20.     system("pause");
  21.     return 0;

  22. }
複製代碼
http://fs-old.mis.kuas.edu.tw/~s1102137106/music/

TOP

返回列表