Aktywne Wpisy

vieniasn +28
przyszedł kolejny model zatyczek testowy i jak nie będzie ucho boleć aż tak szybko i nie będą wypadać to super bo wygłuszenie mają bardzo dobre
źródło: 1000048075
Pobierz
JakDorobic_com +32
Halo, halo, przyszła pora na piątkowe #rozdajo świąteczne! Do zdobycia jest karta podarunkowa Allegro o wartości 100 zł!
A zasady są bardzo proste:
• Daj plusika.
• Napisz w komentarzu, jaki jest Twój wymarzony prezent świąteczny, a odpowiedź uzasadnij.
A zasady są bardzo proste:
• Daj plusika.
• Napisz w komentarzu, jaki jest Twój wymarzony prezent świąteczny, a odpowiedź uzasadnij.
źródło: Wykop-konkurs-swieta
Pobierz




Jak zachodzi ta rekurencja? dlaczego po _x printuje mi od 1,do 5 (1,2,3,4,5)?? Wyjaśni ktoś proszę?
stars(n):
"""Rekurencyjne wypisywanie n linii z gwiazdką."""
if n > 0:
print ( n )
printstars(n-1)
print(n)
elif n==0:
print('_X')
printstars(5)
źródło: comment_1591652256yVrWP2B38hwIjyLNKuUR1v.jpg
Pobierzźródło: comment_1591652295oEmHg6ruxoayf6AN2kSp2X.jpg
Pobierzprint_stars(n-1)masz jeszczeprint(n), więc wchodzi sobie najpierw na kilka poziomów rekurencji, po czym wychodząc wali w te printy :)1. Kod wklejaj na pastebin czy coś podobnego.
2. Jak zaznaczył @ProfesorBigos - ogarnij działanie debuggera. To jest bardzo fajne zadanie w którym poznasz jak to funkcjonuje i bardzo łatwo wyłapiesz program.
3. Dlaczego masz
print( n )zamiastprint(n)?Jeśli po wywołaniu fn(2) wykona się fn(1) i funkcja wróci do miejsca wywołania to n nadal będzie tam równe 2. Czyli: f(2) -> wypisz 2, wywołanie f(1) -> wypisz 1, powrót, wypisz 2.