for циклі

⏱️ 25 минут 📚 Деңгей: Бастауыш

Теория

while синтаксисі

while шарт:
    # қайталанатын код
    # шартты өзгертетін әрекет (әйтпесе шексіз цикл)

Мысал

count = 0
while count < 5:
    print(count)
    count += 1  # маңызды!

For және while салыстыру

  • For – белгілі саны бар цикл (мысалы, тізім бойынша немесе range арқылы).
  • While – белгісіз саны, шартқа байланысты (пайдаланушы енгізуін күту, шарт орындалғанша).

Пайдаланушы енгізуін бақылау

while True:
    age = input("Жасыңызды енгізіңіз (сан): ")
    if age.isdigit():
        age = int(age)
        break
    else:
        print("Қате! Тек сан енгізіңіз.")
print(f"Сіз {age} жастасыз")

Шексіз цикл және одан құтылу

Шексіз цикл (INFINITE LOOP) – қауіпті! Дұрыс жолы - break қолдану.

# Шексіз цикл
# while True:
#     print("мен тоқтамаймын")

# Дұрыс жолы - break
counter = 0
while True:
    print(counter)
    counter += 1
    if counter >= 5:
        break

# Ойын мысалы (компьютер санды ойлайды)
import random
secret = random.randint(1, 10)
while True:
    guess = int(input("Болжаңыз (1-10): "))
    if guess == secret:
        print("Дұрыс!")
        break
    else:
        print("Қайтадан...")

while-else

else – цикл break арқылы тоқтатылмаса орындалады.

n = 5
while n > 0:
    print(n)
    n -= 1
else:
    print("Цикл табиғи аяқталды")

# Егер break болса, else орындалмайды
x = 10
while x > 0:
    if x == 5:
        break
    print(x)
    x -= 1
else:
    print("орындалмайды")

Мысалдар

# Санның цифрларының қосындысы
num = int(input("Сан: "))
sum_digits = 0
while num > 0:
    digit = num % 10
    sum_digits += digit
    num //= 10
print(f"Цифрлар қосындысы: {sum_digits}")

# Кері санақ
n = int(input("Кері санақ бастау: "))
while n >= 0:
    print(n)
    n -= 1
print("Баста!")

# Күрделі процент (баланс екі еселенгенше)
balance = 1000
rate = 0.05
years = 0
while balance < 2000:
    balance += balance * rate
    years += 1
print(f"{years} жылдан кейін баланс {balance:.2f}")