[ Príspevkov: 13 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.03.14
Prihlásený: 21.08.18
Príspevky: 42
Témy: 15 | 15
Bydlisko: Bánovce n.B...
NapísalOffline : 08.11.2014 18:19 | Python-funkcia

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 :))


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1702
Témy: 0 | 0
NapísalOffline : 08.11.2014 18:31 | Python-funkcia

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)


Offline

Užívateľ
Užívateľ
Python-funkcia

Registrovaný: 21.09.13
Prihlásený: 21.12.24
Príspevky: 2111
Témy: 77 | 77
Bydlisko: Považská By...
NapísalOffline : 08.11.2014 18:33 | Python-funkcia

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.
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1702
Témy: 0 | 0
NapísalOffline : 08.11.2014 18:36 | Python-funkcia

Prípadne
Kód:
print(faktorial(cislo))
(v závislosti od použitej verzie Python)


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.03.14
Prihlásený: 21.08.18
Príspevky: 42
Témy: 15 | 15
Bydlisko: Bánovce n.B...
Napísal autor témyOffline : 08.11.2014 18:50 | Python-funkcia

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 :)


Offline

Užívateľ
Užívateľ
Python-funkcia

Registrovaný: 21.09.13
Prihlásený: 21.12.24
Príspevky: 2111
Témy: 77 | 77
Bydlisko: Považská By...
NapísalOffline : 08.11.2014 19:00 | Python-funkcia

a
Kód:
cislo = input("Cislo")

?


_________________
Nesnívaj svoj život, ale ži svoj sen.
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.03.14
Prihlásený: 21.08.18
Príspevky: 42
Témy: 15 | 15
Bydlisko: Bánovce n.B...
Napísal autor témyOffline : 08.11.2014 19:07 | Python-funkcia

Potrebujem číslo nie string :P


Offline

Skúsený užívateľ
Skúsený užívateľ
Python-funkcia

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66 | 66
Bydlisko: Žilina
NapísalOffline : 08.11.2014 19:57 | Python-funkcia

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, ...
Offline

Užívateľ
Užívateľ
Python-funkcia

Registrovaný: 27.12.08
Prihlásený: 13.12.22
Príspevky: 1874
Témy: 96 | 96
Bydlisko: Bratislava,...
NapísalOffline : 08.11.2014 20:04 | Python-funkcia

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)
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.03.14
Prihlásený: 21.08.18
Príspevky: 42
Témy: 15 | 15
Bydlisko: Bánovce n.B...
Napísal autor témyOffline : 08.11.2014 20:15 | Python-funkcia

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...


Offline

Užívateľ
Užívateľ
Python-funkcia

Registrovaný: 27.12.08
Prihlásený: 13.12.22
Príspevky: 1874
Témy: 96 | 96
Bydlisko: Bratislava,...
NapísalOffline : 08.11.2014 20:41 | Python-funkcia

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? :D


_________________
~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)
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.03.14
Prihlásený: 21.08.18
Príspevky: 42
Témy: 15 | 15
Bydlisko: Bánovce n.B...
Napísal autor témyOffline : 09.11.2014 0:25 | Python-funkcia

No je s tým problém :P 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 :)


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 12.11.14
Prihlásený: 04.08.15
Príspevky: 27
Témy: 3 | 3
NapísalOffline : 12.11.2014 0:21 | Python-funkcia

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:28

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))

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:29

Kó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


 [ Príspevkov: 13 ] 


Python-funkcia



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Python

v Perl, Python, Ruby, CGI

12

965

02.07.2021 8:41

void

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie.

python

v Perl, Python, Ruby, CGI

1

778

19.12.2011 23:09

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

Help python

v Perl, Python, Ruby, CGI

6

1858

20.04.2009 8:18

bji

V tomto fóre nie sú ďalšie neprečítané témy.

Vyvojar Python

v Ponuka práce

0

668

31.05.2012 20:47

webwrx

V tomto fóre nie sú ďalšie neprečítané témy.

python LinearDiscriminantAnalysis

v Perl, Python, Ruby, CGI

0

511

22.08.2016 13:23

marian_r

V tomto fóre nie sú ďalšie neprečítané témy.

Python, program

v Perl, Python, Ruby, CGI

6

1129

02.07.2013 19:04

reDo

V tomto fóre nie sú ďalšie neprečítané témy.

Python skusenosti

v Perl, Python, Ruby, CGI

19

1388

12.07.2013 23:36

phodinux

V tomto fóre nie sú ďalšie neprečítané témy.

Python zoznam

v Perl, Python, Ruby, CGI

1

735

14.06.2013 21:35

reDo

V tomto fóre nie sú ďalšie neprečítané témy.

Python vs PHP

v Perl, Python, Ruby, CGI

2

500

16.03.2018 1:30

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

Python a pxssh

v Perl, Python, Ruby, CGI

0

371

11.01.2018 9:19

arno

V tomto fóre nie sú ďalšie neprečítané témy.

Je vhodny python?

v Perl, Python, Ruby, CGI

1

839

02.09.2021 1:32

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

Python alebo c++

v Perl, Python, Ruby, CGI

13

1862

25.06.2013 19:58

phodinux

V tomto fóre nie sú ďalšie neprečítané témy.

[Python] Nacitanie retazca

v Perl, Python, Ruby, CGI

8

725

31.10.2013 0:47

F3RY

V tomto fóre nie sú ďalšie neprečítané témy.

Python pre začiatočníkov

v Perl, Python, Ruby, CGI

1

638

08.09.2020 11:14

Joeyeti

V tomto fóre nie sú ďalšie neprečítané témy.

python - jednoduchá úloha

v Perl, Python, Ruby, CGI

5

1021

08.06.2020 14:50

ux

V tomto fóre nie sú ďalšie neprečítané témy.

pspad a python

v Perl, Python, Ruby, CGI

2

655

19.11.2012 12:47

zeto750



© 2005 - 2025 PCforum, edited by JanoF