#03 PRINT(), SINTEKS VA ARIFMETIK AMALLAR
print() funktsiyasi, Python sintaksi va arifmetik amallar
PRINT()
Avvalgi darsimizning yakunida bir nechta kodlarni pythonda bajarib ko'rishni vazifa qilgan edik. Keling shu kodlarning natijasini ko'ramiz:
Natija: Assalom alaykum
Kutilganidek, yuqoridagi kod Assalom alaykum matnini konsolda ko'rsatdi. Keling endi keyingi kodni kiritamiz:
Natija: SyntaxError: invalid syntax
Bu safar esa Hayrli tong!
yozuvi o'rniga, Syntax Error (sinteksda xatolik) xabari chiqdi. Xatolik qayerda?
Avval aytganimizdek, print() funktsiyasi matn yoki ifodalarni konsolga chiqarish vazifasini bajaradi. Lekin bu funktsiya to'g'ri ishlashi uchun bir nechta qoidalarga amal qilish lozim. Jumladan, agar konsolga matn chiqarmoqchi bo'lsak, matnimiz albatta qo'shtirnoq yoki (" "
) yoki birtirnoq(' '
) orasida yozlishi kerak. Demak Hayrli tong!
so'zini konsolda chiqarish uchun to'g'ri kod:
yoki
bo'ladi.
Natija: Hayrli tong!
Qo'shitrnoq yoki birtirnoq ishlatishning afzalliklaridan biri, agar siz chiqarmoqchi bo'lgan matnda ikkovidan biri qatnashgan bo'lsa, print()
funktsyasida ikkinchisidan foydalanasiz. Keling quyidagi misolni ko'ramiz:
Natija: Men "Dell" markasidagi noutbuk sotib oldim
Yuqoridagi matnda "Dell"
so'zi qo'shtirnoq ichida eda. Bu matnni konsolga chiqarish uchun esa, print()
funktsyasi ichida matnni birtirnoq ichiga oldik.
Agar matnni bir necha qatorga bo'lib yozish talab qilinsa, uchtalik qo'shtirnoq(""" """)
yoki birtirnoqdan (''' ''')
foydalanish mumkin:
Natija:
Odami ersang, demagil odami,
Oniki, yo'q xalq g'amidin g'ami
Qatorga bo'lishning yana bir usuli, qator so'nggida \n
belgisini qo'yish.
Natija:
Odami ersang, demagil odami,
Oniki, yo'q xalq g'amidin g'ami
Yuoqridagi matnni birtirnoq orqali ham konsolga chiqarish mumkinmi? Matndagi yo'q
, g'am
so'zlaridagi birtirnoqlar bunga to'sqinlik qilmaydimi? Qiladi.
Buning oldini olish uchun esa matndagi birtirnoq belgisidan avval \
belgisini qo'yish lozim.
Natija:
Odami ersang, demagil odami,
Oniki, yo'q xalq g'amidin g'ami
Yuqoridagi kodga e'tibor bergan bo'lsangiz "yo'q" so'zi yo\'q
ko'rinishida "g'am" so'zi esa g\'am
ko'rinishida yozilgan. Umuman olganda \
belgisi har qanday mahsus belgi oldidan qo'yiladi.
Agar yuqordagi kodimizda \
belgisini ishlatmaganimizda natija qanday bo'lar edi?
Natija: SyntaxError: invalid syntax
Keling shu o'rinda Syntax Error (sinteksda xatolik) haqida ham gaplashaylik.
SINTEKS XATOLIK (SYNTAX ERROR)
Har bir tilda orfografik va grammatik qoidalar bo'lgani kabi, dasturlash tillarining ham o'ziga yarasha qonun-qoidalari bor. Bu qoidalar to'plami sinteks (syntax) deb ataladi. Sinteks xatolik (Syntax Error) deb esa shu qoidalarning buzilishiga aytiladi.
Misol uchun keraksiz joyda qo'yilgan nuqta, vergul yoki bo'sh joy, shuningdek ma'lum funktsiyalar nomini xato yozish (print()
o'rniga prit()
), ochilmay yoki yopilmay qolgan qavs, noo'rin bo'shliq, qolib ketgan kalit so'z (keyword) kabilar ham Syntax Error hisoblanadi.
Syntax Error eng ko'p uchraydigan xatolik bo'lib, Python bunday xatolik bor dasturlarni bajarmaydi.
Biz darslarimiz davomida turli sinteks qoidalar haqida o'z o'rnida yana to'xtalamiz.
ARIFMETIK AMALLAR
Amaliyotga qaytamiz, print()
funktsiyasi nafaqat matn, balki turli ifodalarni ham konsolga chiqaradi.
Keling quyidagi kodlarni ham bajaramiz:
Natija: 10
Python arifmetik amallarni bajarishda Matematika qoidalariga amal qiladi:
Qavs ichidagi amallar qavs ortidagilardan avval bajariladi
Darajaga oshirish (ildiz chiqarish) ko'paytirish va bo'lishdan avval bajariladi
Ko'paytirish va bo'lish, qo'shish va ayirishdan avval bajariladi
Boshqa holatlarda ifodalar chapdan o'ngga qarab bajariladi
Yuqoridagi misolda ham avval ko'paytirish (4*2=8
), keyin esa qo'shish amali (2+8=10
) bajarildi.
Natija: 3.8
Ko'rib turganingizdek, /
belgisi bo'lish amalini bajaradi va natija har doim o'nlik son ko'rinishida bo'ladi (agarchi bo'lish amali natijasida butun son xosil bo'lsa ham):
Natija: 4.0
Bo'lish amalidan butun son ko'rinishidagi natija olish uchun //
belgisidan foydalanamiz:
Natija: 4
Natija: 3
Amaliyotimizdagi keyingi kodni ham bajaraylik:
Natija: 16
Yuqoridagi **
belgisi darajaga oshirishni anglatadi, ya'ni 2**4
ifodasi 2 ning 4-darajasini beradi.
Pythonda oddiy arifmetik amallar quyidagi jadvalda berilgan.
Operator | Tavsif | Misol |
+ | Qo'shish | 5+6=11 |
- | Ayirish | 5-6=-1 |
* | Ko'paytirish | 5*6=30 |
/ | Bo'lish | 5/6=0.833333 |
// | Bo'lish va butun qismini olish | 5//6=0 |
** | Exponenta (daraja/ildiz) | 5**6=15625 |
% | Bo'linmaning qoldig'ini olish | 15%6=3 |
print()
yordamida matn va ifodalarni jamlab chiqarish ham mumkin. Buning uchun har bir ifoda va matn vergul (,
) bilan ajratiladi:
Natija: To'qqizning kvadrati 81 ga teng
Natija:3x3= 9
IZOHLAR (COMMENTS)
Yaxshi dasturchilarning odatlaridan biri har qanday kodni izohlar bilan tushuntirib ketish. Izohlar kelajakda o'zimiz uchun ham, boshqalar uchun ham dasturimiz qanday ishlashini tushunishda yordam beradi.
Quyidagi ikki misolga e'tibor bering, va ulardan qay biri tushunarliroq ekanini solishtiring
Yuqoridagi misolda #
belgisidan keyin yozilgan matn izoh (comment) deyiladi.
Izoh alohida qatorda yoki qator oxiridan ham yozilishi mumkin. Python #
dan keyingi har qanday matnni (qator oxirigacha) e'tiborsiz qoldiaradi. #
dan keyin yozligan kodlar ham bajarilmaydi:
Natija: Assalom alaykum!
AMALIYOT
Quyidagi matnni aynan shunday ko'rinishda konsolda chiqaring:
"Nexia", "Tico", 'Damas' ko'rganlar qilar havas
Quyidagi misollarga yechimni Pythonda chiqaring. Har bir misoldan avval misol matnini izoh ko'rinishida yozing:
5 ning 4-darajasini toping
22 ni 4 ga bo'lganda qancha qoldiq qoladi?
Tomonlari 125 ga teng kvadratning yuzi va perimetrini toping
Diametri 12 ga teng bo'lgan doiraning yuzini toping ( deb oling)
Katetlari 6 va 7 bo'lgan to'g'ri burchakli uchburchakning gipotenuzasini toping (Pifagor teoremasidan foydalaning)
Javoblarni savol va yechim ko'rinishida chiqaring: 5 ning 4-darajasi 625
MISOLLARGA JAVOBLAR
Yuqoridagi misollarni o'zingiz ishlashga harakat qiling, so'ngra quyidagi bog'lamadagi javoblar bilan solishtiring.
Last updated