6. Sikllar: for va range
Nazariya
for va range
for i in range(5):
print(i) # 0, 1, 2, 3, 4range uch ko‘rinishda:
| Yozuv | Qiymatlar |
|---|---|
range(5) | 0, 1, 2, 3, 4 |
range(2, 6) | 2, 3, 4, 5 |
range(0, 10, 2) | 0, 2, 4, 6, 8 |
range(5, 0, -1) | 5, 4, 3, 2, 1 |
Oxirgi son kirmaydi — bu boshda chalkashtiradi, lekin qulay:range(n) aynan n ta qiymat beradi.
To‘plovchi o‘zgaruvchi
Sikldan oldin boshlang‘ich qiymat qo‘yiladi, sikl ichida yangilanadi:
yigindi = 0
for son in sonlar:
yigindi += sonMaksimum uchun boshlang‘ich qiymat — birinchi element (nol emas!
sonlar manfiy bo‘lishi mumkin):
eng_katta = sonlar[0]
for son in sonlar:
if son > eng_katta:
eng_katta = sonTo‘g‘ridan-to‘g‘ri elementlar bo‘yicha
for harf in "salom":
print(harf)
for son in [3, 1, 4]:
print(son)Indeks ham kerak bo‘lsa:
for i, son in enumerate(sonlar):
print(i, son)Ichma-ich sikllar
for i in range(3):
for j in range(3):
print(i, j)Bu 3 × 3 = 9 marta bajariladi. Ichma-ich sikl tez o‘sadi: n ta
element ustidagi ikkita sikl n² amal degani.
Misol
n = int(input())
a = list(map(int, input().split()))
eng_katta = a[0]
for son in a:
if son > eng_katta:
eng_katta = son
print(eng_katta)
Mashq masalalari
| ✓ | Kod | Masala | Qiyinlik |
|---|---|---|---|
| A104 | Raqamlar yig‘indisi | Oson | |
| PY06-1 | 1 dan n gacha | Boshlang‘ich | |
| PY06-10 | Isigan kunlar | Oson | |
| PY06-11 | Ishorasi almashib turadigan yig‘indi | Oson | |
| PY06-12 | Pifagor uchliklari | O‘rta | |
| PY06-13 | Yulduzli romb | O‘rta | |
| PY06-14 | Eng uzun o‘sish davri | O‘rta | |
| PY06-15 | Tangalar bilan to‘lash | Qiyin | |
| PY06-2 | Juft sonlar yig‘indisi | Boshlang‘ich | |
| PY06-3 | Faktorial | Boshlang‘ich | |
| PY06-4 | Ko‘paytirish jadvali | Boshlang‘ich | |
| PY06-5 | Yulduzli piramida | Oson | |
| PY06-6 | Qadam bilan sanash | Oson | |
| PY06-7 | Kunlik qadamlar | Oson | |
| PY06-8 | Katakli taxta | Oson | |
| PY06-9 | Alifbo zinapoyasi | Oson |