6-ma’ruza. Sonlar. Sonlar bilan ishlashning tashqi funksiya va metodlari. math moduli. Matematik funksiyalar. random moduli. Tasodifiy son generasiyasi
Reja
Sonlar.
Sonlar bilan ishlashning tashqi funksiya va metodlari.
math moduli.
Matematik funksiyalar.
random moduli. Tasodifiy son generasiyasi
Python 3 dasturlash tili quyidagi sonli turlarni qo’llaydi:
int - butun son (45, 6, -7, 0, 124). Son kattaligi faqat tezkor xotira sig’imiga bog’liq;
float – haqiyqiy son (2.2101, 0.0025, 7.987456);
complex – kompleks son (2+5j, 3+2j).
Butun son eng sodda tip, haqiyqiy son murakkabroq va eng murakkabi kompleks sondir. Shu tarzda agar amalda butun va haqiyqiy son ishtirok etsa, butun son avtomatik haqiyqiy songa o’tkaziladi so’ng haqiyqiy sonlar ustida amallar bajariladi. Bu amal natijasi haqiyqiy son bo’ladi.
Butun sonli obyektni oddiy usulda yarish mumkin:
>>> х = 0; у = 10; z = -80
>>> х, у, z
(0, 10, -80)
Bundan tashqari sonni ikkilik, sakkizlik yoki o’n oltilik shaklda ham ko’rsatish mumkin. Bunday sonlar avtomatik o’nlik butun songa o’zgartiriladi.
0b (yoki 0B) belgisidan boshlanuvchi hamda 0 va 1 raqamlari kombinatsiyasidan iborat ikkilik son:
>>> 0b11111111, 0b101101
(255, 45)
0 va o belgisidan boshlanuvchi hamda 0 dan 7 gacha raqamlar kombinatsiyasidan iborat sakkizlik son:
>>> 0о7 , 0о12, 0o777, 0o7 , 0o12, 0o777
(7, 10, 511, 7, 10, 51 1)
0x (yoki 0X) belgisidan boshlanuvchi hamda 0 dan 9 gacha raqamlar, A dan F gacha harflar kombinatsiyasidan iborat o’n oltilik son:
>>> 0x9, 0xA, 0x10, 0xFFF, 0xfff
(9, 10, 16, 4095, 40 95)
Haqiyqiy son nuqta va (yoki) eksponsial ifodalash shaklidan iborat sonlar kombinasiyasi orqali ifodalanadi:
>>> 10., .14, 3.14, 11Е20, 2.5e-12
(10.0, 0.14, 3.14, 1.le+21, 2.5е-12 )
Haqiyqiy sonlar ustida amallarni bajarishda hisob aniqligi chegarasini e’tiborga olish kerak bo’ladi.
Masalan, keyingi amal natijasi g’ayritabiy ko’rinishi mumkin:
>>> 0.3 - 0.1 - 0.1 - 0.1
-2 . 77555 75615 62891 4е-17
Biz aslida 0.0 natijani kutgan edik, lekin biz kurib kurganimizdek boshqa natijaga ega boldik. Agar fiksirlangan natijaga erishmoqchi bo’lsak decimal modulidan foydalanishimiz mumkin:
>>> from decimal import Decimal
>>> Decimal("0.3")-Decimal("0.1")-Decimal("0.1")-Decimal("0.1")
Decimal('0.0')
Bundan tashqari fractions moduli yordamida kasr sonni ham ifodalash mumkin. Kasr soni yaratishda ikki sonni yani surat va mahrajni bitta son yoki satr sifatida ko’rsatish mumkin.
Misol sifatida 4/5 kasr sonini yaratamiz:
>>> from fractions import Fraction
>>> Fraction (4, 5)
Fraction (4, 5)
½ kasr sonini quyidagi uchta usul bilan yaratish mumkin:
>>> Fraction (l, 2)
Fraction (l, 2)
>>> Fraction ("0.5" )
Fraction (l, 2)
>>> Fraction (0 .5 )
Fraction (l, 2)
Kasr sonlar ustida oddiy sonlar kabi arifmetik amallar bajarish mumkin:
>>> Fraction (9, 5) - Fraction (2, 3)
Fraction (l7, 15)
>>> Fraction ("0.3") - Fraction ("0.1") - Fraction (" 0.l ") - Fraction (" 0.1 ")
Fraction (0,1)
>>> float (Fraction (0, 1))
0.0
Kompleks son quyidagi formatda yoziladi:
+ J
Bu yerda J ixtiyoriy registrda (katta yoki kichik) bo’lishi mumkin. Kompleks sonlarga doir misollar:
>>> 2+ 5J, 8j
((2+ 5j), 8j )
Do'stlaringiz bilan baham: |