Darslar 51–52 · 2 ta dars · M. R. Fayziyeva, D. M. Sayfurov, N. S. Xaytullayeva. Informatika va axborot texnologiyalari, 9-sinf. «Nashriyot uyi Tasvir», Toshkent, 2020
52
Amaliy mashg‘ulot: math moduli
Darslik: 103-bet
MaqsadAmaliy mashg‘ulotda math modulining funksiyalarini (sqrt, floor, ceil, factorial, log10, pi, sin) va yaxlitlash round() ni qo‘llaydi, geometrik masalalarni hisoblaydi.
Yangi so‘zlar
math · math: the module for mathematical functions and constantssqrt() · sqrt(): the square root of a numberfloor() va ceil() · floor(): rounds down; ceil(): rounds up to a whole numberround() · round(x, n): rounds x to n digits after the point; it is a built-in function
Tushuntirish
math moduli matematik hisoblar uchun tayyor funksiyalar beradi; uni import math bilan yuklab, math.sqrt(x) ko‘rinishida ishlatamiz. math.sqrt(x) – kvadrat ildiz, math.factorial(n) – n!, math.log10(x) – o‘nli logarifm, math.pi – π soni, math.sin va math.cos burchakni radianda qabul qiladi, shuning uchun gradusni math.radians() bilan o‘tkazish kerak. math.floor(x) pastga, math.ceil(x) yuqoriga yaxlitlaydi: floor(−1.5) = −2, ceil(−1.5) = −1. round(x, n) va abs(x) o‘rnatilgan funksiyalar bo‘lib, math ni talab qilmaydi. Haqiqiy sonlar xotirada taxminan saqlanadi, shuning uchun sin 30° ni hisoblasak 0.4999… chiqadi; natijani round() bilan yaxlitlash kerak. Manfiy sondan ildiz olinsa, ValueError chiqadi. Teng tomonli uchburchak yuzi S = a² · √3 / 4, ya’ni math.sqrt(3) / 4 * a ** 2; buni √(3/4) bilan adashtirmang.
Namunalar
Funksiyalar: import math ⏎ print(math.sqrt(144), math.floor(2.7), math.ceil(2.1), abs(-5)) Natija 12.0 2 3 5. Teng tomonli uchburchak (a = 4): import math ⏎ a = 4 ⏎ print(round(math.sqrt(3) / 4 * a ** 2, 2)) yuzi taxminan 6.93.
Gipotenuza va boshqalar: import math ⏎ print(math.sqrt(3 ** 2 + 4 ** 2), math.factorial(5), math.log10(1000)) 3 va 4 katetli to‘g‘ri burchakli uchburchakda gipotenuza 5.0, 5! = 120, log10(1000) = 3.0. Doira va sinus: import math ⏎ print(round(math.pi * 2 ** 2, 2), round(math.sin(math.radians(30)), 2)) Radiusi 2 bo‘lgan doira yuzi 12.57, sin 30° = 0.5.
Sinfda faoliyat
«Kalkulyator-muhandis»: guruh uchburchak katetlari, doira radiusi va burchak kiritiladigan 3 ta kichik hisoblash dasturini yozadi; natijalarni qo‘lda va kalkulyatorda solishtiradi.
Mashq
1
math.floor(-1.5) va math.ceil(-1.5) nimaga teng?
-2 va -1
2
Katetlari 6 va 8 bo‘lgan to‘g‘ri burchakli uchburchak gipotenuzasini hisoblovchi dastur yozing.
import math ⏎ a = 6 ⏎ b = 8 ⏎ print(math.sqrt(a ** 2 + b ** 2))
3
round(3.14159, 2) nimaga teng?
3.14
4
math.sqrt(-4) nima uchun xato beradi?
Manfiy sondan haqiqiy kvadrat ildiz yo‘q; Python ValueError (math domain error) chiqaradi.