April 30, 2025

Python dasturlash tilida algoritmik masalalar.


🟩 1. Parkometr (to‘xtash vaqtiga qarab to‘lov)

🔹 Masala tavsifi:

Shahar avtomobil turar joyida har bir soat uchun 3000 so‘mdan to‘lov olinadi. Agar avtomobil 5 soatdan ortiq turgan bo‘lsa, umumiy summadan 2000 so‘m chegirma beriladi. Foydalanuvchi mashinani necha soat turganini kiritadi. Shu asosda to‘lov hisoblanadi.

🔹 Algoritm:

  1. Soat sonini foydalanuvchidan oling.
  2. Har bir soat uchun 3000 so‘m to‘lovni hisoblang.
  3. Agar soat > 5 bo‘lsa, summadan 2000 so‘m chegirma qiling.
  4. Umumiy to‘lovni chiqarish.

🟩 2. Telefon raqami tekshiruv

🔹 Masala tavsifi:

Foydalanuvchi 9 xonali telefon raqamini kiritadi. Agar raqam faqat raqamlardan iborat bo‘lsa va uzunligi aynan 9 bo‘lsa, “Qabul qilindi”, aks holda “Noto‘g‘ri raqam” chiqadi.

🔹 Algoritm:

  1. Telefon raqamini satr sifatida oling.
  2. len() yordamida uzunligini tekshiring.
  3. isdigit() yordamida raqamligiga ishonch hosil qiling.
  4. Shartga qarab javobni chiqaring.

🟩 3. Yil faslini aniqlash

🔹 Masala tavsifi:

Foydalanuvchi oy raqamini kiritadi (1 dan 12 gacha). Siz bu raqamga qarab qaysi faslga tegishli ekanini aniqlashingiz kerak.

🔹 Algoritm:

  1. Oy raqamini oling.
  2. 12, 1, 2 → Qish; 3, 4, 5 → Bahor; 6, 7, 8 → Yoz; 9, 10, 11 → Kuz.
  3. Har bir guruh uchun if-elif bilan tekshirib, fasl nomini chiqaring.

🟩 4. Avtobus yoshi chegirmasi

🔹 Masala tavsifi:

Avtobusda 7 yoshgacha bolalar va 60 yoshdan katta odamlar bepul yurishadi. Qolganlar uchun to‘lov 2000 so‘m. Foydalanuvchi yoshini kiritsa, to‘lovni aniqlang.

🔹 Algoritm:

  1. Foydalanuvchining yoshini oling.
  2. Agar yosh < 7 yoki yosh >= 60 bo‘lsa → Bepul.
  3. Aks holda → 2000 so‘m to‘lov.

🟩 5. Ism uzunligini baholash

🔹 Masala tavsifi:

Ism uzunligiga qarab quyidagicha xulosa chiqarilsin: 5 dan kam — “Qisqa”, 5–7 — “O‘rtacha”, 8 va undan ortiq — “Uzun”.

🔹 Algoritm:

  1. Ismni oling.
  2. len() bilan uzunligini toping.
  3. Shartlarga if-elif-else orqali baho bering.

🟩 6. Baho hisoblash (3 baho asosida)

🔹 Masala tavsifi:

Foydalanuvchi 3ta fan bo‘yicha 0 dan 100 gacha baho kiritadi. O‘rtacha qiymatga qarab quyidagi harfli baho berilsin:

  • 90+ → A
  • 80–89 → B
  • 70–79 → C
  • 60–69 → D
  • <60 → F

🔹 Algoritm:

  1. Uch bahoni oling.
  2. O‘rtachasini hisoblang.
  3. if-elif orqali toifalarga ajrating.

🟩 7. To‘lov holatini tekshirish

🔹 Masala tavsifi:

Foydalanuvchi to‘lov qilganmi (True) yoki yo‘q (False) degan qiymat kiritadi. Agar to‘lov qilingan bo‘lsa → “Xush kelibsiz”, aks holda → “Iltimos, avval to‘lov qiling”.

🔹 Algoritm:

  1. Boolean turidagi qiymat oling.
  2. if orqali tekshirib, natijani chiqaring.

🟩 8. Haroratga qarab kiyinish maslahati

🔹 Masala tavsifi:

Haroratga qarab quyidagi maslahatlar chiqsin:

  • < 0: “Issiq kiyining!”
  • 0–15: “Kurtka oling”
  • 16–25: “Yengil kiyinishingiz mumkin”
  • 25: “Sovuq ichimlikni unutmang”

🔹 Algoritm:

  1. Harorat qiymatini oling.
  2. Shartlarga qarab mos matnni chiqaring.

🟩 9. Parol kuchini baholash

🔹 Masala tavsifi:

Foydalanuvchi parol kiritadi. Uzunligiga qarab parol quyidagicha baholansin:

  • < 8 belgili — “Juda zaif”
  • 8–11 — “O‘rtacha”
  • ≥ 12 — “Kuchli”

🔹 Algoritm:

  1. Parol satrini oling.
  2. len() yordamida uzunligini aniqlang.
  3. Shartga qarab xabar chiqarilsin.

🟩 10. Eng kichik sonni topish

🔹 Masala tavsifi:

Foydalanuvchi 3 ta son kiritadi. Ularning eng kichigini topish kerak.

🔹 Algoritm:

  1. 3ta son oling.
  2. min() funksiyasi orqali eng kichigini aniqlang.
  3. Natijani chiqarish.