返回列表 發帖

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

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

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int x,y,smaller,gcd;
  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.             gcd=i;
  17.             break;            
  18.         }        
  19.     }  
  20.     cout<<x<<"跟"<<y<<"的最大公因數是: "<<gcd<<endl;
  21.     cout<<endl;
  22.     system("pause");
  23.     return 0;   
  24. }
複製代碼

TOP

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

TOP

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

TOP

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

TOP

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

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int x,y,smaller,gcd;
  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.             gcd=i;
  17.             break;            
  18.         }        
  19.     }  
  20.     cout<<x<<"跟"<<y<<"的最大公因數是: "<<gcd<<endl;
  21.     cout<<endl;
  22.     system("pause");
  23.     return 0;   
  24. }
複製代碼

TOP

本帖最後由 駱顗安 於 2020-7-9 16:19 編輯
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int x,y,b;
  7.     cout<<"請輸入第一個數: ";
  8.     cin>>x;
  9.     cout<<"請輸入第二個數: ";
  10.     cin>>y;
  11.     for(int a=x;a>=1;a--)
  12.     {
  13.          if(x%a==0&&y%a==0)
  14.          {
  15.               b=a;
  16.               break;
  17.          }
  18.     }
  19.     cout<<x<<"與"<<y<<"的最大公因數是: "<<b<<endl;
  20.     system("pause");
  21.     return 0;
  22. }
複製代碼

TOP

返回列表