Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # koodipaja, 27.9.2023
- print("Tervetuloa!")
- # UUSI TIEDOSTO
- # Fibonaccin lukujonossa lasketaan yhteen kaksi edellistä lukua,
- # ja siitä saadaan seuraava luku. Jonon 9 ensimmäistä numeroa ovat:
- # 0, 1, 1, 2, 3, 5, 8, 13, 21
- # TEHTÄVÄNANTO: kysytään käyttäjältä numero, eli kuinka monennen
- # Fibonaccin luvun hän haluaa nähdä, ja sen jälkeen lasketaan
- # tämä luku for-silmukalla
- # Fibonaccissa luku on aina kahden edellisen summa:
- # 0, 1, 1, 2, 3, 5, 8, 13, 21
- # tämän takia esim.
- # 5. luku on 1 + 2 = 3
- # 6. luku on 2 + 3 = 5
- # 7. luku on 3 + 5 = 8
- # 8. luku on 5 + 8 = 13
- # x. luku on vanha + uusi = fibonaccin luku
- # pidetään näissä muuttujissa kirjaa
- # mikä on laskukaavan vanha ja uusi luku
- # ensimmäiset kaksi lukua ovat 0 ja 1
- old_number = 0
- new_number = 1
- # annetaan jokin alkuarvo fibonaccille, tämä ajetaan heti
- # yli for-silmukassa. fibonaccin luku alussa on 1
- fibonacci = 1
- # kysytään käyttäjältä monesko luku halutaan, int
- # huom: koska kaksi ensimmäistä numero on jo muuttujissa
- # old_number ja new_number, pitää choicea vähentää -2
- choice = input("Monennenko Fibonaccin luvun haluat?\n")
- choice = int(choice) - 2
- print()
- # for-silmukka, joka laskee niin kauan uutta Fibonaccin lukua
- # kuin choice-muuttuja määrää
- for number in range(choice):
- print("Uusi kierros alkaa!")
- # logiikka on tämä:
- # lasketaan tämänhetkinen Fibonaccin luku: vanhempi luku + uudempi luku
- fibonacci = old_number + new_number
- print(f"Fibonacci nyt: {old_number} + {new_number} = {fibonacci}")
- # päivitetään vanha luku siihen, mikä oli aiemmin uusi luku
- old_number = new_number
- # päivitetään uusi luku siihen, mikä on tämän hetkinen Fibonaccin luku
- new_number = fibonacci
- print(f"Tämän kierroksen jälkeen: vanha luku = {old_number}, uusi luku = {new_number}")
- print()
- print()
- # palautetaan +2 takaisin, jotta tulostuu oikein
- print(f"Fibonaccin luku = {fibonacci}")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement