Darslar 18 · 1 ta dars · M. R. Fayziyeva, D. M. Sayfurov, N. S. Xaytullayeva. Informatika va axborot texnologiyalari, 9-sinf. «Nashriyot uyi Tasvir», Toshkent, 2020
18
Aralash (kombinatsiyalashgan) algoritmlar
Darslik: 44–46-betlar
MaqsadAralash (kombinatsiyalashgan) algoritmning tarkibini biladi; sanash, EKUB topish va kvadrat tenglamani yechish algoritmlarini so‘zlar bilan tuzadi.
Yangi so‘zlar
aralash algoritm · mixed (combined) algorithm: an algorithm that uses several of the basic structures togetherhisoblagich · counter: a variable that grows by 1 each time something is counteddiskriminant · discriminant: D = b² – 4ac, which decides how many roots a quadratic equation hasYevklid algoritmi · Euclid’s algorithm: finds the greatest common divisor by repeated subtraction or division with remainder
Tushuntirish
Aralash algoritmda chiziqli, tarmoqlanuvchi va takrorlanuvchi tuzilmalar birga qo‘llanadi; amaliyotdagi ko‘p algoritm shunday. Sanash masalasida hisoblagich K = 0 dan boshlanadi, sikl har bir elementni ko‘rib chiqadi, tarmoqlanish elementning shartga mosligini tekshiradi va mos bo‘lsa K = K + 1 bajariladi. Yevklid algoritmi sikl va tarmoqlanishdan iborat: A ≠ B bo‘lguncha katta sondan kichigi ayiriladi; A = B bo‘lganda shu son EKUB bo‘ladi. Kvadrat tenglama ax² + bx + c = 0 (a ≠ 0) da avval D = b² – 4ac hisoblanadi: D < 0 bo‘lsa haqiqiy ildiz yo‘q; D = 0 bo‘lsa bitta ildiz x = –b / (2a); D > 0 bo‘lsa ikkita ildiz x₁,₂ = (–b ± √D) / (2a). Bu yerda tarmoqlanish yechim turlarini ajratadi. Aralash algoritm blok-sxemasida rombdan keyin sikl strelkasi orqaga qaytishi mumkin.
Namunalar
Sonlarning musbatlarini sanash. Algoritm: boshlansin; K = 0; i 1 dan 6 gacha: x kiritilsin; agar x > 0 bo‘lsa, K = K + 1; K chiqarilsin. Kiritilgan 3, –2, 0, 5, 8, –1 da K: 1, 1, 1, 2, 3, 3. Javob: 3.
x² – 5x + 6 = 0 da a = 1, b = –5, c = 6. D = 25 – 24 = 1 > 0, ikkita ildiz: x₁ = (5 + 1) / 2 = 3, x₂ = (5 – 1) / 2 = 2. x² – 4x + 4 = 0 da D = 16 – 16 = 0, bitta ildiz x = 4 / 2 = 2.
Sinfda faoliyat
«Sanoqchi»: sinfda ko‘zoynak taqqanlar, 14 yoshdan kattalar yoki ko‘k kiyimdagilar sanaladi: bir o‘quvchi har bir kishini «rombda» tekshiradi, boshqasi hisoblagich K ni yuritadi.
Mashq
1
Qanday algoritm aralash deyiladi?
Bir necha turdagi tuzilma (chiziqli, tarmoqlanuvchi, takrorlanuvchi) birga qatnashgan algoritm.
2
4, –3, 7, –8, 2 sonlari orasida nechta musbat son bor? Hisoblagich K ning oxirgi qiymatini toping.
3
3
56 va 42 ning EKUBini ayirish usuli bilan toping.
14
4
Nima uchun kvadrat tenglama algoritmida tarmoqlanish kerak?
D ning ishorasi yechimlar sonini belgilaydi (0, 1 yoki 2 ildiz); D < 0 da ildiz chiqarib bo‘lmaydi.