آبجی
14th April 2010, 02:08 AM
برنامه یافتن ب.م.م دو عدد را ملاحظه می کنید ، البته به کمک یک تابع بازگشتی. می دانیم که ب.م.م دو عدد x و y با کمک تابع بازگشتی ، اگر y برابر صفر باشد برابر x و در غیر اینصورت برابر ب.م.م دو عدد y و x%y است؛ به کمک همین الگوریتم ، برنامه ساده زیر رو نوشتم.
کد:
#include<iostream>
#include<conio.h>
using namespace std;
int gcd(int a , int b)
{
if(b==0)
return a;
else
return gcd(b,a%b);
}
int main()
{
int x , y;
GET:cout<<"Enter two numbers:"<<endl;
cin>>x>>y;
if(!(x>0 && y>0))
{
cout<<"You must enter two natural numbers"<<endl;
goto GET;
}
cout<<"Gcd for "<<x<<" and "<<y<<" is "<<gcd(x,y)<<endl;
getch();
return 0;
دانلود فایل سورس (http://www.4shared.com/file/35105628/49af1fa4/Project-Rec_GCD.html) برنامه و اجرا
کد:
#include<iostream>
#include<conio.h>
using namespace std;
int gcd(int a , int b)
{
if(b==0)
return a;
else
return gcd(b,a%b);
}
int main()
{
int x , y;
GET:cout<<"Enter two numbers:"<<endl;
cin>>x>>y;
if(!(x>0 && y>0))
{
cout<<"You must enter two natural numbers"<<endl;
goto GET;
}
cout<<"Gcd for "<<x<<" and "<<y<<" is "<<gcd(x,y)<<endl;
getch();
return 0;
دانلود فایل سورس (http://www.4shared.com/file/35105628/49af1fa4/Project-Rec_GCD.html) برنامه و اجرا