標題:
求最小公倍數
[打印本頁]
作者:
鄭繼威
時間:
2023-3-17 01:34
標題:
求最小公倍數
讓使用者任意輸入兩個正整數,求它們的最小公倍數。
提示:加入break敘述,使符合條件時,跳出迴圈。
法1
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
re:
int x, y, bigger;
cout<<"請輸入第一個數: ";
cin>>x;
cout<<"請輸入第二個數: ";
cin>>y;
//取得最大的數字
bigger=x>y?x:y;
cout<<x<<"與"<<y<<"的最小公倍數是: ";
//for 最大的那個數(bigger)~最多跑到x*y
//每次步伐為bigger比較快找到
for(int i=bigger; i<=x*y; i+=bigger)
{
//判斷有沒有整除( 餘數為0代表整除)
if(i%x==0 && i%y==0)
{
cout<<i<<endl<<endl;
break;
}
}
goto re;
system("pause");
return 0;
}
複製代碼
法2
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
re:
int x,y,tmp;
cout<<"請依序輸入兩個正整數: ";
cin>>x>>y;
int x_copy=x,y_copy=y; //複製一份x,y 免得x,y被取代
cout<<x<<"與"<<y<<"的"<<endl;
while(x%y!=0)
{
tmp=x%y;
x=y;
y=tmp;
}
//現在y就是我的最大公因數了
cout<<"最大公因數:"<<y<<endl<<endl;
//公式:lcm=a*b/gcd
cout<<"最小公倍數:"<<x_copy*y_copy/y<<endl;;
goto re;
system("pause");
return 0;
}
複製代碼
作者:
邵凡榛
時間:
2023-3-17 21:02
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
int x,y,bigger;
cout<<"請輸入第1個數:";
cin>>x;
cout<<"請輸入第1個數:";
cin>>y;
bigger=x>y?x:y;
cout<<x<<"與"<<y<<"的最小公倍數是:";
for(int i=bigger;i<=x*y;i+=bigger)
{
if(i%x==0 and i%y==0)
{
cout<<i<<endl;
break;
}
}
system("pause");
return 0;
}
複製代碼
作者:
何權晉
時間:
2023-3-17 21:08
#include<iostream>
using namespace std;
int main()
{
int x,y, bing;
cout<<"Enter two random whole numbers: ";
cin>>x>>y;
bing=x>y?x:y;
cout<<x<<"&"<<y<<"'s LCD: ";
for(int i=bing;i<=x*y;i=i+bing)
{
if(i%x==0 && i%y==0)
{
cout<<i<<endl<<endl;
break;
}
}
system("pause");
return 0;
}
複製代碼
作者:
張絜晰
時間:
2023-3-17 21:09
#include<iostream>
#include<cstdlib>
using namespace std;
int main(){
int x,y,s,b=0;
cout<<"請輸入2個正整數:";
cin>>x>>y;
if(y>x){
s=x;}
else{
s=y;
for(int i=s;i>=1;i--){
if(x%i==0 && y%i==0){
b=i;
break;
}}
cout<<endl<<x<<"和"<<y<<"的最小公倍數是"<<x*y/b<<endl;
system("pause");
return 0;
}
複製代碼
作者:
廖秝瑜
時間:
2023-3-18 07:41
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
int x,y,bigger;
cout<<"請輸入第一個數:";
cin>>x;
cout<<"請輸入第二個數:";
cin>>y;
bigger=x>y?x:y;
cout<<x<<"與"<<y<"的最小公倍數是:";
for(int i=bigger; i<=x*y; i+=bigger)
{
cout<<i<<endl;
break;
}
}
}
system("pause");
return 0;
}
複製代碼
作者:
蔡沛倢
時間:
2023-3-18 13:31
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
int a,b,c=0;
cout<<"請輸入兩個整數:";
cin>>a>>b;
c=a>b?a:b;
cout<<a<<"和"<<b<<"的最小公倍數為:";
for(int d=c;d>=1;d++){
if(d%a==0 and d%b==0){
cout<<d<<endl;
break;
}
}
system("pause");
return 0;
}
複製代碼
作者:
呂得銓
時間:
2023-3-18 22:02
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
re:
int x, y, bigger;
cout<<"請輸入第一個數: ";
cin>>x;
cout<<"請輸入第二個數: ";
cin>>y;
bigger=x>y?x:y;
cout<<x<<"與"<<y<<"的最小公倍數是:";
for(int i=bigger; i<=x*y; i+=bigger)
{
if(i%x==0 && i%y==0)
{
cout<<i<<endl;
break;
}
}
goto re;
system("pause");
return 0;
}
複製代碼
作者:
呂宗晉
時間:
2023-3-19 14:24
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
re:
int x, y, bigger;
cout<<"請輸入第一個數: ";
cin>>x;
cout<<"請輸入第二個數: ";
cin>>y;
bigger=x>y?x:y;
cout<<x<<"與"<<y<<"的最小公倍數是: ";
for(int i=bigger; i<=x*y; i+=bigger)
{
if(i%x==0 && i%y==0)
{
cout<<i<<endl<<endl;
break;
}
}
goto re;
system("pause");
return 0;
}
複製代碼
作者:
邱品惟
時間:
2023-6-26 17:08
#include<iostream>
using namespace std;
int main()
{
int x,y;
cout<<"請輸入第一個數: ";
cin>>x;
cout<<"請輸入第二個數: ";
cin>>y;
int big=x>y?x:y;
for(int i=big;i<=x*y;i=i+big)
{
if(i%x==0 && i%y==0)
{
cout<<x<<"與"<<y<<"的最大公倍數是: "<<i<<endl;
break;
}
}
system("pause");
return 0;
}
複製代碼
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/)
Powered by Discuz! 7.2