返回列表 發帖

因數分解 (四) - 求公因數

讓使用者任意輸入兩正整數, 電腦回應它們有那些公因數, 以及共有幾個公因數.
執行畫面如下:

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {  
  6.     re:
  7.     int x, y, smaller, sum=0;
  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.             sum++;
  20.         }
  21.     }
  22.     cout<<endl<<"共有"<<sum<<"個!"<<endl<<endl;
  23.     goto re;
  24.     return 0;   
  25. }
複製代碼

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main(){
  5. re:
  6. int a,b,smaller,sum=0;
  7. cout<<"請輸入第一個數";
  8. cin>>a;
  9. cout<<"請輸入第二個數";
  10. cin>>b;
  11. smaller=a<b?a:b;
  12. cout<<a<<"和"<<b<<"的公因數:";
  13. for(int i=1;i<=smaller;i++)
  14. {
  15.   if(a%i==0&&b%i==0)
  16.    {

  17.     cout<<i<<" ";
  18. sum++;}
  19. }
  20. cout<<"共有"<<sum<<"個"<<endl;
  21. cout<<endl;
  22. cout<<endl;

  23. goto re;

  24. system("pause");
  25. return 0;

  26. }
複製代碼

TOP

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

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int x,y,smaller,z=0;

  7.     cout<<"請輸入第一個正整數: ";
  8.     cin>>x;
  9.     cout<<"請輸入第二個正整數: ";
  10.     cin>>y;
  11.     smaller=x<y?x:y;
  12.     cout<<x<<"跟"<<y<<"的公因數為:";

  13.     for(int i=1; i<=smaller; i++)
  14.     {
  15.          if(x%i==0 && y%i==0){
  16.             cout<<i<<" ";
  17.             z++;}
  18.     }
  19.     cout<<endl;
  20.     cout<<x<<"跟"<<y<<"的公因數有"<<z<<"個"<<endl;
  21.     system("pause");
  22.     return 0;
  23. }
複製代碼

TOP

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

TOP

本帖最後由 林少謙 於 2024-7-6 15:05 編輯
  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int x,y,smaller,a;
  7.     cout<<"請輸入第一個正整數:";
  8.     cin>>x;
  9.     cout<<"請輸入第二個正整數:";
  10.     cin>>y;
  11.     smaller=x<y?x:y;
  12.     cout<<x<<"和"<<y<<"的"<<"的公因數有:";
  13.     for (int i=1 ; i<=smaller ; i++)
  14.     {
  15.         if (x%i==0&&y%i==0)
  16.         {
  17.             cout<<i<<" ";
  18.             a++;
  19.         }
  20.     }
  21.     cout<<endl;
  22.     cout<<"共有"<<a<<"個"<<endl;
  23.     cout<<endl;
  24.     system("pause");
  25.     return 0;
  26. }
複製代碼

TOP

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int x, y, smaller, sum=0;
  7.     cout<<"請輸入第一個數: ";
  8.     cin>>x;
  9.     cout<<"請輸入第二個數: ";
  10.     cin>>y;
  11.     smaller=x<y?x:y;
  12.     cout<<x<<"與"<<y<<"的公倍數有: ";
  13.     for(int i=1; i<=smaller; i++)
  14.     {
  15.         if(x%i==0 && y%i==0)
  16.         {
  17.             cout<<i<<" ";
  18.             sum++;
  19.         }
  20.     }
  21.     cout<<endl<<"共有"<<sum<<"個!"<<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,z,a,b,sum;
  7.     cout<<"請輸入第一個正整數:";
  8.     cin>>x;
  9.     cout<<"請輸入第二個正整數:";
  10.     cin>>y;
  11.     cout<<"請輸入第三個正整數:";
  12.     cin>>z;
  13.     a=x<y?x:y;
  14.     b=a<z?a:z;
  15.     cout<<x<<"和"<<y<<"和"<<z<<"的"<<"的公因數有:";
  16.     for (int i=1 ; i<=b ; i++)
  17.     {
  18.         if (x%i==0&&y%i==0&&z%i==0)
  19.         {
  20.             cout<<i<<" ";
  21.             sum++;
  22.         }
  23.     }
  24.     cout<<endl;
  25.     cout<<"共有"<<sum<<"個"<<endl;
  26.     cout<<endl;
  27.     system("pause");
  28.     return 0;
  29. }
複製代碼

TOP

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

TOP

返回列表