Skip to content

Dasturlash masalalari

Bu bo'limda darslarda o'rganilgan mavzularni mustahkamlash uchun amaliy masalalar jamlangan. Masalalarning yechimi berilmaydi: ularni Python tilida o'zingiz yozib, natijani tekshirasiz. Har bir masala ostida Misol qatori bor: unda sinash uchun kirish qiymatlari va dasturingiz chiqarishi kerak bo'lgan natija ko'rsatilgan.

Masalalar ikki qismga bo'lingan:

  • Asosiy mavzular — 1230 ta algoritmik masala. Ular oddiy hisob-kitobdan boshlanib, massiv, satr, fayl, rekursiya va daraxtlargacha boradi.
  • Python tili — 270 ta masala. Ular ro'yxat va lug'atlar, comprehension, dekoratorlar, klasslar, generatorlar, asyncio va test yozish kabi Python'ga xos imkoniyatlarni mashq qildiradi.

Qanday ishlash kerak?

  1. Mavzularni tartib bilan yeching. Har bir mavzu oldingilariga tayanadi.
  2. Masala shartida berilgan formulalar faqat yo'l-yo'riq. Hisoblashni o'zingiz dasturlaysiz.
  3. Yechimni turli kirish ma'lumotlari bilan tekshiring, chegaraviy holatlarni (0, manfiy son, bo'sh ro'yxat) unutmang.
  4. Misollardagi ro'yxatlar [1 2 3] ko'rinishida yozilgan bo'lishi mumkin — Python'da bu [1, 2, 3] ga mos keladi. «Massiv» deganda Python ro'yxati (list) tushuniladi.
  5. Asosiy mavzularda iloji boricha tayyor funksiyalardan (sum, max, sorted, reversed va hokazo) emas, o'zingiz yozgan sikl va funksiyalardan foydalaning — keyin natijani tayyor funksiya bilan solishtiring.
  6. Python tili masalalariga asosiy mavzularni yechib bo'lgandan keyin o'ting. Barcha masalalar Python 3.12+ uchun mo'ljallangan.

Asosiy mavzular

№ Mavzu Masalalar
1 Begin — Kiritish-chiqarish va o'zlashtirish 40
2 Integer — Butun sonlar 30
3 Boolean — Mantiqiy ifodalar 40
4 If — Shart operatori 30
5 Case — Tanlash operatori (match) 20
6 For — Parametrli sikl 40
7 While — Shartli sikl 30
8 Series — Sonli ketma-ketliklar 40
9 Proc / Func — Funksiyalar 60
10 Minmax — Minimum va maksimumlar 30
11 Array — Bir o'lchamli massivlar 140
12 Matrix — Ikki o'lchamli massivlar 100
13 String — Belgilar va satrlar 70
14 File — Ikkilik fayllar 90
15 Text — Matnli fayllar 60
16 Param — Funksiyalarda murakkab turlar 70
17 Recur — Rekursiya 30
18 Dynamic — Dinamik ma'lumotlar strukturalari 80
19 Tree — Daraxtlar 100
20–21 TablBase / TablExt — Jadval ma'lumotlarini qayta ishlash 130

Python tili

№ Mavzu Masalalar
P1 List / Tuple — Ro'yxat va kortejlar 25
P2 Dict / Set — Lug'at va to'plamlar 25
P3 Comprehension — Ro'yxat, lug'at va to'plam ifodalari 20
P4 Functions — Argumentlar, closure va dekoratorlar 30
P5 OOP — Klasslar va obyektga yo'naltirilgan dasturlash 30
P6 Exceptions — Istisnolar va kontekst menejerlari 20
P7 Iterators / Generators — Iteratorlar va generatorlar 25
P8 Typing — Tur izohlari va statik tekshiruv 15
P9 Stdlib — Modullar va standart kutubxona 30
P10 Concurrency — threading, multiprocessing va asyncio 30
P11 Testing — Testlar va profillash 20