CodeBlanks Logo Icon CodeBlanks

Proje: Genel bakış

Üs alma ve kombinasyon hesaplayan recursive mini uygulamanın planını çıkarırsın.

Proje: Recursive hesaplar

Bu projede recursive üs alma, kombinasyon ve hızlı üs hesaplayan bir uygulama geliştireceksin. Her ders bir öncekinin üzerine inşa edilir.

Önce üs alma, sonra kombinasyon, sonra sonuç yazdırma ve son olarak hızlı üs ekleyeceksin.

Üs alma mantığı

Üs alma: base^exp = base * base^(exp-1). Taban durum exp=0 ise 1'dir. Bu, recursion'ın klasik bir örneğidir.

Her çağrı exp'yi bir azaltır ve sonunda 0'a ulaşır. Bu, taban durumun sağladığı sonlanma koşuludur.

Uygulama Üs alma (recursive)

power(base, exp) yaz. exp=0 ise 1, değilse base * power(base, exp-1). print(power(2, 5)) ile 32 yazdır.

Başlangıç kodu

solution.py
def power(base, exp):
    # Üs al

Örnek çözüm

solution.py
def power(base, exp):
    # Üs al
    if exp == 0:
        return 1
    return base * power(base, exp - 1)
print(power(2, 5))

Beklenen çıktı

32

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Projenin ilk adımı nedir?

  • Yazdırma
  • Üs alma
  • Hızlı üs
  • Kombinasyon Doğru cevap

Açıklama: İlk adım üs almadır.

2 Proje: Genel bakış: kavramları eşleştir

Kavram Anlamı
power Üs alma
combination Kombinasyon
print_results Yazdır
fast_power Hızlı üs

3 Taban durum

Soru
exp = ____ ise 1 döndürülür.
Cevap
exp = 0 ise 1 döndürülür.

Açıklama: 0 doğru.

Başlangıç bölümündeki tüm dersler