1-bo'lim mashqlari va masalalar
Bu dars haqida
1-bo'limda o'rgangan barcha mavzular:
✓ O'zgaruvchilar va ma'lumot turlari
✓ scanf va printf
✓ Arifmetik va mantiqiy operatorlar
✓ if / else / else if
✓ switch — case
✓ for, while, do-while sikllar
Endi bularni birgalikda ishlatamiz. Masalalar qiyinlik darajasi bo'yicha tartiblangan.
Oson masalalar
✏️ Masala 1 — 1 dan 15 gacha
Foydalanuvchidan kiritish yo'q. 1 dan 15 gacha barcha sonlarni chiqaring.
Input Output — 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
✏️ Masala 2 — 1 dan N gacha
Foydalanuvchidan
Noling. 1 dan N gacha sonlarni chiqaring.
Input Output 4 1 2 3 4 7 1 2 3 4 5 6 7 10 1 2 3 4 5 6 7 8 9 10
✏️ Masala 3 — Boshlang'ich sondan 15 gacha
Foydalanuvchidan
noling.
n <= 15bo'lsa — n dan 15 gacha oshib chiqaringn > 15bo'lsa — n dan 15 gacha kamayib chiqaring
Input Output 3 3 4 5 6 7 8 9 10 11 12 13 14 15 15 15 21 21 20 19 18 17 16 15 16 16 15
✏️ Masala 4 — Qadam bilan chiqarish
Foydalanuvchidan
i(boshlang'ich) vastep(qadam) oling.idan 15 gachastepbilan chiqaring.
Input Output 4 3 4 7 10 13 1 2 1 3 5 7 9 11 13 15 5 5 5 10 15 10 1 10 11 12 13 14 15
✏️ Masala 5 — i dan n gacha
Foydalanuvchidan
ivanoling.
i < n→ oshib borib chiqaringi > n→ kamayib borib chiqaringi == n→ faqat o'sha son
Input Output 6 11 6 7 8 9 10 11 3 3 3 10 5 10 9 8 7 6 5 1 4 1 2 3 4
✏️ Masala 6 — 1 dan 19 gacha yig'indi
Kiritish yo'q. 1 dan 19 gacha barcha sonlar yig'indisini chiqaring.
Input Output — 190
✏️ Masala 7 — 1 dan 20 gacha juft sonlar yig'indisi
Kiritish yo'q. 1 dan 20 gacha faqat juft sonlar yig'indisi.
Input Output — 110
✏️ Masala 8 — Kvadratlar yig'indisi
Foydalanuvchidan
Noling. 1 dan N gacha sonlarning kvadratlari yig'indisi.N=4 → 1² + 2² + 3² + 4² = 1+4+9+16 = 30
Input Output 4 30 1 1 3 14 5 55
✏️ Masala 9 — Talabalar umumiy balli
Sinfda 10 ta talaba bor. Har birining imtihon balini ketma-ket oling. Umumiy ballni chiqaring.
Input Output 85 90 78 88 92 75 80 85 91 78 842 100 100 100 100 100 100 100 100 100 100 1000
✏️ Masala 10 — O'rtacha yosh
5 ta talabaning yoshini oling. O'rtacha yoshni hisoblang.
Input Output 20 21 22 20 23 21.2 18 18 18 18 18 18.0 25 30 20 15 10 20.0
✏️ Masala 11 — Voyaga yetmaganlar
Foydalanuvchidan
Noling, keyin N ta yoshni oling. 18 yoshdan kichik bo'lganlar sonini chiqaring.
Input Output N=7, 25 21 22 15 17 32 19 2 N=5, 10 12 14 16 18 4 N=3, 20 21 22 0
✏️ Masala 12 — Faktorial
Foydalanuvchidan
Noling.N!ni hisoblang.5! = 1 × 2 × 3 × 4 × 5 = 120
Input Output 5 120 3 6 1 1
✏️ Masala 13 — N dan 1 gacha teskari
Foydalanuvchidan
Noling. N dan 1 gacha kamayib chiqaring.
Input Output 5 5 4 3 2 1 1 1 3 3 2 1
✏️ Masala 14 — A dan B gacha 5 ga bo'linadiganlar
Foydalanuvchidan
AvaBoling. A dan B gacha 5 ga bo'linadigan sonlarni chiqaring.
Input Output 1 25 5 10 15 20 25 6 14 10 1 4 (hech narsa)
✏️ Masala 15 — A va B orasidagi yig'indi
Foydalanuvchidan
AvaBoling. A dan B gacha (ikkalasi ham kiradi) yig'indini chiqaring.
Input Output 3 8 Yig'indi: 33 1 1 Yig'indi: 1 5 6 Yig'indi: 11
O'rta masalalar
✏️ Masala 16 — Minimal qiymat
Foydalanuvchidan
Nva N ta son oling. Eng kichik sonni toping.
Input Output 5, 7 2 3 10 12 Minimal: 2 3, 5 1 2 Minimal: 1 3, -1 -3 -5 Minimal: -5
✏️ Masala 17 — Eng katta va kichik
Foydalanuvchidan
Nva N ta son oling. Eng katta va eng kichik sonni toping.
Input Output 6, 12 45 7 89 32 20 Katta: 89, Kichik: 7 3, 5 5 5 Katta: 5, Kichik: 5 3, -1 -10 3 Katta: 3, Kichik: -10
✏️ Masala 18 — Sondagi juft raqamlar
Foydalanuvchidan butun son oling. Uning raqamlari orasida nechta juft raqam borligini toping.
Input Output 28473 Juft: 3 7113 Juft: 0 2468 Juft: 4
✏️ Masala 19 — Sondagi eng katta raqam
Foydalanuvchidan butun son oling. Uning raqamlari orasidagi eng katta raqamni toping.
Input Output 6425912 9 3057 7 11111 1
✏️ Masala 20 — Fibonacci yig'indisi
Foydalanuvchidan
Noling. Fibonacci ketma-ketligining dastlabki N hadini yig'indisini chiqaring.0, 1, 1, 2, 3, 5, 8, 13 ... N=5 → 0+1+1+2+3 = 7
Input Output 5 Yig'indi: 7 1 Yig'indi: 0 7 Yig'indi: 20
✏️ Masala 21 — Shokoladlar
Foydalanuvchi har bir paketdagi shokolad sonini ketma-ket kiritadi (
0kiritilguncha). Eng ko'p shokolad bor paket va umumiy sonni chiqaring.
Input Output 5 12 3 8 0 Eng ko'p: 12, Umumiy: 28 1 1 1 0 Eng ko'p: 1, Umumiy: 3
✏️ Masala 22 — Kvadrat shakl
[shakl]Foydalanuvchidan
noling.n × no'lchamdagi&belgidan iborat kvadrat chiqaring.Input:
4& & & & & & & & & & & & & & & &Input:
3& & & & & & & & &
✏️ Masala 23 — Uchburchak (pastga)
[shakl]Foydalanuvchidan
noling. Har qatorda kamayib boradigan*bilan to'g'ri burchakli uchburchak chiqaring.Input:
4* * * * * * * * * *Input:
3* * * * * *
✏️ Masala 24 — Qator raqamli kvadrat
[shakl]Foydalanuvchidan
noling. Har qatorda o'sha qator raqami chiqsin.Input:
31 1 1 2 2 2 3 3 3Input:
41 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4
✏️ Masala 25 — Diagonal
[shakl]Foydalanuvchidan
noling.n × nkvadratning faqat asosiy diagonalidagi elementlar o'rniga*, qolganlariga bo'sh joy chiqaring.Input:
4* * * *
✏️ Masala 26 — Karra jadvali
[shakl]1 dan 10 gacha karra jadvalini chiqaring.
1 2 3 4 5 6 7 8 9 10 2 4 6 8 10 12 14 16 18 20 3 6 9 12 15 18 21 24 27 30 ... 10 20 30 40 50 60 70 80 90 100Har son uchun
%4dformat ishlating.
Qiyin masalalar
✏️ Masala 27 — Raqamlar statistikasi
[real hayot]Foydalanuvchidan
Nta son kiriting (0kiritilguncha). Kiritish tugagach quyidagilarni chiqaring:
- Nechta son kiritildi
- Yig'indi
- O'rtacha qiymat
- Eng katta va eng kichik son
Input Output 4 7 2 9 1 0 Soni: 5, Yig'indi: 23, O'rtacha: 4.60, Max: 9, Min: 1 10 10 10 0 Soni: 3, Yig'indi: 30, O'rtacha: 10.00, Max: 10, Min: 10
✏️ Masala 28 — Raqam taxminlash o'yini
[real hayot]Dasturda maxfiy son:
int maxfiy = 42Foydalanuvchi topgunicha taxmin qiladi. Har urinishda yo'naltiring:
- Katta →
Kichikroq son kiring- Kichik →
Kattaroq son kiring- To'g'ri →
Barakalla! N ta urinishda topdingiz
Urinishlar Output 10 50 30 42 Barakalla! 4 ta urinishda topdingiz 42 Barakalla! 1 ta urinishda topdingiz
✏️ Masala 29 — Raqamli piramida
[shakl]Foydalanuvchidan
Noling. Quyidagi piramidani chiqaring:N=5: 1 121 12321 1234321 123454321Har qatorda: bo'sh joylar, o'suvchi raqamlar, kamayuvchi raqamlar.
✏️ Masala 30 — EKUB va EKUK
[matematika]Foydalanuvchidan ikkita son
AvaBoling.
- EKUB (eng katta umumiy bo'luvchi) ni toping
- EKUK (eng kichik umumiy karrali) ni toping
EKUK = (A × B) / EKUB
Input Output 48 18 EKUB: 6, EKUK: 144 100 75 EKUB: 25, EKUK: 300 7 13 EKUB: 1, EKUK: 91
✏️ Masala 31 — Tub sonlar orasida
[matematika]Foydalanuvchidan
AvaBoling. A dan B gacha barcha tub sonlarni chiqaring. Nechta ekanligini ham aytib qo'ying.
Input Output 1 20 2 3 5 7 11 13 17 19 — Jami: 8 ta 10 30 11 13 17 19 23 29 — Jami: 6 ta
✏️ Masala 32 — Collatz ketma-ketligi
[o'yin]Foydalanuvchidan musbat son
Noling. Quyidagi qoidaniN = 1bo'lguncha takrorlang:
Njuft bo'lsa →N = N / 2Ntoq bo'lsa →N = N * 3 + 1Ketma-ketlikni va necha qadam kerakligini chiqaring.
N=6: 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1
Input Output 6 6 3 10 5 16 8 4 2 1 — Qadam: 8 1 1 — Qadam: 0 27 (uzoq ketma-ketlik) — Qadam: 111
⭐ Yulduzcha masalalar
✏️ Masala 33 — Armstrong sonlari
[yulduzcha]N xonali son Armstrong soni hisoblanadi, agar har bir raqamining N-darajasi yig'indisi sonning o'ziga teng bo'lsa.
153 = 1³ + 5³ + 3³ = 153 ✓ 370 = 3³ + 7³ + 0³ = 370 ✓1 dan 999 gacha barcha Armstrong sonlarini toping va chiqaring.
Input Output — 1 2 3 4 5 6 7 8 9 153 370 371 407
✏️ Masala 34 — Kasr ko'rinishi
[yulduzcha]Foydalanuvchidan
Noling. Quyidagi qatorni hisoblang:S = 1/1 + 1/2 + 1/3 + ... + 1/N
Input Output 4 S = 2.0833 10 S = 2.9290 1 S = 1.0000 Hint:
(double)1 / i— butun songa e'tibor bering.
✏️ Masala 35 — Shart bilan to'xtatish
[yulduzcha]Foydalanuvchi sonlarni ketma-ket kiritadi (
0kiritilguncha davom etadi).Har kiritilgan sonda hisoblang:
- Umumiy yig'indi
- Musbatlar soni va yig'indisi
- Manfiylar soni va yig'indisi
- O'rtacha qiymat
Kiriting: 5 Kiriting: -3 Kiriting: 8 Kiriting: -1 Kiriting: 0 === Natija === Umumiy: 4 ta son, yig'indi: 9 Musbat: 2 ta, yig'indi: 13 Manfiy: 2 ta, yig'indi: -4 O'rtacha: 2.25
Xulosa — 1-bo'lim
Siz endi bilasiz:
| Mavzu | Nima uchun kerak |
|---|---|
| O'zgaruvchilar | Ma'lumot saqlash |
| scanf / printf | Kiritish / chiqarish |
| Operatorlar | Hisob-kitob va mantiq |
| if / else | Qaror qabul qilish |
| switch | Ko'p variantdan birini tanlash |
| for / while / do-while | Takrorlash |
Keyingi bo'lim
1-bo'lim tugadi. Endi yangi daraja — funksiyalar, rekursiya, massivlar.
11-dars: Funksiyalar — e'lon, ta'rif, chaqirish