Raqamli texnologiyalar vazirligi muhammad al – xorazmiy nomidagi toshkent axborot texnologiyalari universiteti farg‘ona filiali


Savol: Quyidagi masalani algoritmni to‘liq qurish bosqichlari bo‘yicha yeching


Download 1.26 Mb.
bet2/3
Sana09.04.2023
Hajmi1.26 Mb.
#1346773
1   2   3
Savol: Quyidagi masalani algoritmni to‘liq qurish bosqichlari bo‘yicha yeching
Masalaning qo‘yilishi. Ikkita butun musbat a va b sonlar berilgan. Ularning eng katta umumiy bo‘luvchisini topish talab qilinadi. Ya’ni, eng katta butun musbat son topish kerakki, unga a va b ni bo‘lganda butun son chiqsin.
Modelni qurish.
Ikkita sonning Eng katta umumiy bo‘luvchisi deb EKUB shu sonlar bo‘linadigan eng katta butun songa aytiladi:
Masalan 12 va 16
12 {1,2,3,4,6,12}
16 {1,2,4,8, 16}
12 va 16 sonlari bo‘linadigan eng katta son bu 4 ga teng.
Algoritmni ishlab chiqish.

  1. Boshlash;

  2. m ni n ga bo‘lamiz, qoldiq r ga teng bo‘lsin;

  3. Agar r=0 unda n-natija; 5 o‘ting;

  4. m:=n; n:=r; 2 o‘ting;

  5. tamom.

Algoritmni to‘g‘riligini tekshirish
Shu algoritmni tadqiq qilib ko‘raylik. m=119, n=544 deb qabul qilaylik. Ikkinchi qadamdan boshlaymiz. Algoritmga binoan bo‘lish natijasini nolga teng deb hisoblaymiz va r ga 119 ni ta’minlaymiz, keyin 3-qadamga o‘tamiz. R nolga teng bo‘lmaganligi uchun, hech nima qilmaymiz va 4-qadamga o‘tamiz. Bu yerda m ga 544 ni, n ga 119 ni ta’minlaymiz. Umuman, ravshan bo‘ldiki, mAmaliy qism
Algoritmni amalga oshirish. (dastur).
#include
using namespace std;
int main()
{
int m,n,r;
cin>>m>>n;
while(n!=0)
{ r=m%n;
m=n;
n=r;
}
cout<}
Dasturni tekshirish (Yechim olish)

{
int m,n,r;
cout<<"m va n o‘zgaruvchilarni kiriting :";
cin>>m>>n;
while(n!=0)
{ r=m%n; //qoldiqni hisoblash
m=n; //o‘rin almashtirish
n=r;
}
cout<<"EKUB ";
cout<}
Dastur natijasi:


Download 1.26 Mb.

Do'stlaringiz bilan baham:
1   2   3




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2023
ma'muriyatiga murojaat qiling