با سلام.یک تمرین هست که میگه:
با استفاده از الگوریتم اقلیدس دو عدد صحیح از کاربر بگیر و بزرگترین مقسوم الیه مشترک آنهارا نشان بده.
البته یه سری توضیح داده اما چیز زیادی دستگیرم نشد.فکر کنم میشه باید جایه زوج مرتب ها تغییر کنه:دی
خیلی ممنون
بــــدرود
مقسوم الیه نه، مقسوم علیه.
1) اگر یکی از دو عدد 0 شد، عدد دیگر بزرگترین مقسوم علیه مشترک است و پایان.
2) اگر عدد اول از عدد دوم کوچکتر نیست، عدد دوم (کوچکتر) را از اولی کسر می کنیم.
3) اگر عدد دوم از عدد اول کوچکتر نیست، عدد اول (کوچکتر) را از دومی کسر می کنیم.
4) به مرحله 1 باز می گردیم.
کد:
do
{
if (x == 0)
{
bmm = y;
break;
}
if (y == 0)
{
bmm = x;
break;
}
if (x > y)
x -= y;
else
y -= x;
} while (true);
یا
کد:
while ((x > 0) && (y > 0))
{
if (x > y)
x %= y;
else
y %= x;
}
if (x > y)
bmm = x;
else
bmm = y;