Mod yordamida 4538 ni 10 ga bo’lgandagi qoldiqni topaylik


Download 80.23 Kb.
bet17/48
Sana10.09.2022
Hajmi80.23 Kb.
#804052
1   ...   13   14   15   16   17   18   19   20   ...   48
Bog'liq
olim pioad
1.1, Sarvinoz14, Aldegid va ketonlar (oksobirikmalar), Aminjon.dasturlash.3, Aminjon.dasturlash.3, mayshona budur, UNIT 3, TESTS FOR Final test 2021 2022 (2), Mansurbek Test Java, 626040, kimyo fanidan test savollari, amaliy dars reja, 1, 1-ma\'ruza Murakkab dasturiy tizimlarni ishlab chiqish muammolari, Dalolatnoma
while a <> b do 
begin 
if a > b then a := a - b else b := b - a 
end;
writeln(a1,' va ', b1, 'sonlarining EKUBi= ', a) 
end.
Bu dasturda “gacha” sikli emas, “bo’lguncha” sikli ishlatilgan. Nima uchun deb o’ylaysiz? Bu savolga javob berish uchun, " bo’lguncha" siklini "... gacha " sikliga, ya’ni while ... dooperatorlarini repeat ... until ... operatorlariga almashtirib ko’ring. Sikl quyidagi ko’rinishga kiradi:
repeat 
if a > b then a := a - b else b := b - a
until a = b;
Bu yerdan sizga ma’lum bo’ldiki, repeat sikli albatta aqalli bir marotaba bajarilmoqda. Agar siz ikkita bir xil son kiritsangiz, dastur "qotib qoladi". Haqiqatdan ham, a> b sharti bajarilmayapti, demak b:=b-a operatori bajariladi. b 0 qiymat qabul qiladi, sikl qaytariladia>b shart bajariladi, a a:=a-0 qiymat qabul qiladi, ya’ni a ning qiymati o’zgarmaydi, a=btenglik hech qachon bajarilmaydi va “dastur qotib qoladi” bu degani sikl “ cheksiz ko’p marta” davom etadi.
Agarda while a <> b do ... sikli qo’llanilsa, o’zaro teng a va b (a=b) sonlar kiritilgan taqdirda ham sikl qotib qolmaydi, aksincha u biron marta ham bajarilmaydi va EKUB o’zaro teng sonlardan bittasining qiymatini qabul qiladi.
EKUBni topishning ikkinchi Evklid algoritmi ham bor.
a va b- natural sonlar bo’lsin, b<>0 va ra ni b ga bo’lgandagi qoldig’i. U holda EKUB(a, b) = EKUB(r, b). 
Isbot tariqasida eng katta umumiy bo’luvchining yaqqol xossasi qo’llaniladi: soni quyidagi hollarda a va b sonlarining eng katta umumiy bo’luvchisi bo’ladi:
1) a va b ni bo’ladi, ya’ni a va b ning umumiy bo’luvchisi bo’ladi; 
2) a va b ning ixtiyoriy umumiy bo’luvchisiga bo’linadi.
a >= b >= 0 va a > 0 bo’lsin. U holda Evklid algoritmi quyidagcha qo’llanadi: agar b = 0, u holda EKUB (a, b) = a. Aks holda a ni b ga bo’lgandagi qoldiqqa teng r ni hisoblab topamiz va EKUB (a,b) ni topish masalasini EKUB (r,b) ni topish masalasi bilan almashtiramiz. r<0 da bu jarayonni davom ettirish mumkin. Quyidagilarga ega bo’lamiz: b > r > r1 > r2 > r3 >, ..., lekin b, r, r1, r2, r3 – musbat butun sonlar bo’lgani uchun, rn = 0 bo’lgan n topiladi. Aytib o’tilgan fikrga mos ravishda 
EKUB(a, b) = EKUB(b, r) = EKUB(r1, r) = ... = EKUB(rn-1, 0) = rn-1. 
Amaliy jihatdan bu quyidagi ko’rinishga ega. 888 va 351 sonlarining EKUB ini topish kerak.
Bularning kattasi 888, a = 888, b = 351. 

Download 80.23 Kb.

Do'stlaringiz bilan baham:
1   ...   13   14   15   16   17   18   19   20   ...   48




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