Stránka: 1 z 1
| [ Príspevkov: 13 ] | |
Autor | Správa |
---|
Registrovaný: 07.03.14 Prihlásený: 21.08.18 Príspevky: 42 Témy: 15 | 15 Bydlisko: Bánovce n.B... |
Zdravím,mám menší problem ,robim rekurzivnu funkciu na faktorialy Kód: def faktorial (f): if f==0: return 1 else : return f*faktorial(f-1) cislo=int(input("Cislo")) faktorial (cislo)
..problem je v tom,ze ked zadam nejake cislo napr 5,tak mi to vyhodi prazdny riadok,az ked zadam ze "faktorial(5)" tak mi vyhodi vysledok...skusal som cez print ...print (f*faktorial(f-1))..ale tam mi hlásilo nejakú chybu...ďakujem )
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Je tak veľký problém skopírovať tú chybovú hlášku?
Každopádne to print chceš pravdepodobne pridať do toho riadku s faktorial(cislo)
|
|
Registrovaný: 21.09.13 Prihlásený: 21.12.24 Príspevky: 2111 Témy: 77 | 77 Bydlisko: Považská By... |
Napisal si to trochu nezrozumitelne, čo presne chceš? Ak spravne chapem tak do inputu musiš dať aj faktorial(5) a až vtedy ti to funguje? V pythone som dlhšie nič nerobil, skus toto: Kód: print faktorial (cislo)
_________________ Nesnívaj svoj život, ale ži svoj sen. |
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Prípadne Kód: print(faktorial(cislo)) (v závislosti od použitej verzie Python)
|
|
Registrovaný: 07.03.14 Prihlásený: 21.08.18 Príspevky: 42 Témy: 15 | 15 Bydlisko: Bánovce n.B... |
Citácia: Traceback (most recent call last): File "C:/Python34/Test2.py", line 7, in <module> faktorial (cislo) File "C:/Python34/Test2.py", line 5, in faktorial print (f*faktorial(f-1)) File "C:/Python34/Test2.py", line 5, in faktorial print (f*faktorial(f-1)) File "C:/Python34/Test2.py", line 5, in faktorial print (f*faktorial(f-1)) File "C:/Python34/Test2.py", line 5, in faktorial print (f*faktorial(f-1)) TypeError: unsupported operand type(s) for *: 'int' and 'NoneType' ..keby to dám hentak tak to nikdy neskončí tá funkcia ..pri Citácia: print faktorial (cislo) mi to vyhadzuje invalid syntax a ked to dam este do zatvoriek tak vypisuje chybu donekonečna...proste ja chcem aby som len zadal cislo a hned vysledok..aby som nemusel davat na vstup faktorial(5) ale iba 5
|
|
Registrovaný: 21.09.13 Prihlásený: 21.12.24 Príspevky: 2111 Témy: 77 | 77 Bydlisko: Považská By... |
a Kód: cislo = input("Cislo") ?
_________________ Nesnívaj svoj život, ale ži svoj sen. |
|
Registrovaný: 07.03.14 Prihlásený: 21.08.18 Príspevky: 42 Témy: 15 | 15 Bydlisko: Bánovce n.B... |
Potrebujem číslo nie string
|
|
Registrovaný: 24.01.08 Prihlásený: 13.09.17 Príspevky: 14572 Témy: 66 | 66 Bydlisko: Žilina |
No ja neviem čo stváraš, ale obyčajné Kód: print(faktorial (cislo))
stačí... Spustíš program, vypýta číslo a po odenterovaní vyhodí výsledok. Žiadne "faktorial(...)" už v konzole nezadávaš.
_________________ C#, PHP, ... |
|
Registrovaný: 27.12.08 Prihlásený: 13.12.22 Príspevky: 1874 Témy: 96 | 96 Bydlisko: Bratislava,... |
problem je v tom, ze pises kod pre python3 a pouzivas python2.. v python-e 3 je funkcia input() ktora precita riadok a vrati ho ako string v python-e 2 sa tato funkcia vola raw_input() a funkcia input() robi eval(raw_input())
_________________ ~Listen to your brain, not your heart~ NB1: Lenovo Y500: CPU: Intel Core i7-3630QM; GPU: nVidia GT650M 2GB SLi; RAM: 16GB DDR3; HDD: 1TB + 256GB SSD (m4); LCD: 15,6" 1920x1080; OS: Win8.1 64-bit + Arch Linux 64-bit (UEFI Powered DualBoot) NB2: Asus K53SJ-SX093: CPU: Intel Core i3-2310M; GPU: Intel HD3000 / nVidia GT520M 1GB Optimus; RAM: 8GB DDR3; SSD: 128GB 840Evo; LCD: 15,6" 1366x768; OS: Win 8.1 Pro 64-bit (UEFI) |
|
Registrovaný: 07.03.14 Prihlásený: 21.08.18 Príspevky: 42 Témy: 15 | 15 Bydlisko: Bánovce n.B... |
Používam python 3.x ....a hento pôjde v pohode Citácia: print (factorial(cislo)) ale iba mimo funkcie ...ale ja chcem ze ked zavolam tu funkciu tak hned mi vyskoci vysledok bez pisania printu mimo funkcie...
|
|
Registrovaný: 27.12.08 Prihlásený: 13.12.22 Príspevky: 1874 Témy: 96 | 96 Bydlisko: Bratislava,... |
tak si sprav funkciu ktora ti vypise faktorial a volaj tu Kód: def funkcia(f): print(faktorial(f))
potom nebudes musiet volat print mimo tejto funkcie, ci aj s tym je nejaky problem?
_________________ ~Listen to your brain, not your heart~ NB1: Lenovo Y500: CPU: Intel Core i7-3630QM; GPU: nVidia GT650M 2GB SLi; RAM: 16GB DDR3; HDD: 1TB + 256GB SSD (m4); LCD: 15,6" 1920x1080; OS: Win8.1 64-bit + Arch Linux 64-bit (UEFI Powered DualBoot) NB2: Asus K53SJ-SX093: CPU: Intel Core i3-2310M; GPU: Intel HD3000 / nVidia GT520M 1GB Optimus; RAM: 8GB DDR3; SSD: 128GB 840Evo; LCD: 15,6" 1366x768; OS: Win 8.1 Pro 64-bit (UEFI) |
|
Registrovaný: 07.03.14 Prihlásený: 21.08.18 Príspevky: 42 Témy: 15 | 15 Bydlisko: Bánovce n.B... |
No je s tým problém ale kašlať sa veď na to....mám ešte takú jednu otázočku...mám úlohu že na vstupe bude "x" a na ďalšom riadku bude "x" čísel..potom budem s tymíto číslami pracovať...a neviem čo je najlepšie v pythone..že kam si ich uložiť..predpokladám že zoznam ,to by som mal problem vyrieseny ,ale ako tam tie cisla dostanem? napr si vytvorim ze zoznam1=[] ..alebo () ...teraz uz neviem presne..o to nejde..ako ich tam dostanem? a druha otazka neexistuje v pythone dačo ako .at v c++? na určenie pozície toho prvku v tom poli? ďakujem
|
|
Registrovaný: 12.11.14 Prihlásený: 04.08.15 Príspevky: 27 Témy: 3 | 3 |
trochu nechápem, ale asi máš na mysli že vstupom sú nejaké čísla a chceš ich dať do poľa hej ? V pythone do listu / zoznamu. Klasicky kod zoznam = [] zoznam.append(prvok) #vloží prvok do zoznamu zoznam.index(prvok) #vráti index prvého výskytu prvku // Spojený príspevok Str 12.11.14 0:28def faktorial(f): if f==0: return 1 else : return f*faktorial(f-1) while True: cislo=int(input("Zadaj cislo")) if cislo < 0: break print(faktorial (cislo)) Funkciu máš napísanú dobre, skús tento kód čo to spraví. Mne to ide - Python 3.3.2 // Spojený príspevok Str 12.11.14 0:29Kód: def faktorial(f): if f==0: return 1 else : return f*faktorial(f-1)
while True: cislo=int(input("Zadaj cislo")) if cislo < 0: break print(faktorial (cislo)) sorry zabudol som na kód
|
|
Stránka: 1 z 1
| [ Príspevkov: 13 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v Perl, Python, Ruby, CGI | 12 | 965 | 02.07.2021 8:41 void | | v Perl, Python, Ruby, CGI | 1 | 778 | 19.12.2011 23:09 Ďuri | | v Perl, Python, Ruby, CGI | 6 | 1858 | 20.04.2009 8:18 bji | | v Ponuka práce | 0 | 668 | 31.05.2012 20:47 webwrx | | v Perl, Python, Ruby, CGI | 0 | 511 | 22.08.2016 13:23 marian_r | | v Perl, Python, Ruby, CGI | 6 | 1129 | 02.07.2013 19:04 reDo | | v Perl, Python, Ruby, CGI | 19 | 1388 | 12.07.2013 23:36 phodinux | | v Perl, Python, Ruby, CGI | 1 | 735 | 14.06.2013 21:35 reDo | | v Perl, Python, Ruby, CGI | 2 | 500 | 16.03.2018 1:30 JanoF | | v Perl, Python, Ruby, CGI | 0 | 371 | 11.01.2018 9:19 arno | | v Perl, Python, Ruby, CGI | 1 | 839 | 02.09.2021 1:32 JanoF | | v Perl, Python, Ruby, CGI | 13 | 1862 | 25.06.2013 19:58 phodinux | | v Perl, Python, Ruby, CGI | 8 | 725 | 31.10.2013 0:47 F3RY | | v Perl, Python, Ruby, CGI | 1 | 638 | 08.09.2020 11:14 Joeyeti | | v Perl, Python, Ruby, CGI | 5 | 1021 | 08.06.2020 14:50 ux | | v Perl, Python, Ruby, CGI | 2 | 655 | 19.11.2012 12:47 zeto750 |
|