Diskuze: Problém s volaním funkcie

Python Python Problém s volaním funkcie

Avatar
ra3sk
Člen
Avatar
ra3sk:

Ahoj, mám problém s volaním vrátenej hodnoty. Viem, že to nemôže fungovať a aj viem prečo. Len neviem ako to napísať tak aby mi to fungovalo. Ak by bol niekto taký dobrý a napísal mi sem riešenie, poprípade aj nejaké vysvetlenie. Predom ďakujem za všetky odpovede a tu je môj kód.

def cyklus(pocetopakovani,prvecislo):
    i=0
    while i < (pocetopakovani-1):
        druhecislo = int(input("Zadaj druhé číslo:"))
        maximum=minimum=prvecislo
        if maximum < druhecislo:
            maximum = druhecislo
        else:
             pass
        if minimum > druhecislo:
            minimum = druhecislo
        i+=1
    return maximum,minimum
cyklus(int(input("Zadaj počet opakovaní:")),int(input("Zadaj prvé číslo:")))
print("Najväčšie zadané číslo bolo: "+str(maximum)+" a najmenšie zadané číslo bolo: "+str(minimum))
 
Odpovědět 8.12.2015 19:47
Avatar
coells
Redaktor
Avatar
Odpovídá na ra3sk
coells:

Opravený kód:

def cyklus(opakovani, prvecislo):
    maximum = minimum = prvecislo
    for i in range(1, opakovani):
        druhecislo = int(input("Zadaj druhé číslo:"))
        minimum, maximum = min(minimum, druhecislo), max(maximum, druhecislo)
    return maximum, minimum

maximum, minimum = cyklus(
    int(input("Zadaj počet opakovaní:")),
    int(input("Zadaj prvé číslo:"))
)
print("Najväčšie zadané číslo bolo: %d a najmenšie zadané číslo bolo: %d" % (maximum, minimum))

Ale protože jsme v Pythonu, je dobré ho využívat:

def cyklus(opakovani, prvecislo):
    cisla = [prvecislo] + [int(input("Zadaj druhé číslo:")) for i in range(1, opakovani)]
    return max(cisla), min(cisla)

maximum, minimum = cyklus(
    int(input("Zadaj počet opakovaní:")),
    int(input("Zadaj prvé číslo:"))
)
print("Najväčšie zadané číslo bolo: %d a najmenšie zadané číslo bolo: %d" % (maximum, minimum))
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět  +1 8.12.2015 20:01
Avatar
ra3sk
Člen
Avatar
Odpovídá na coells
ra3sk:

Aj keď nejakým veciam stále nerozumiem tak to čo som nevedel som pochopil. Ďakujem za opoveď.

 
Nahoru Odpovědět 8.12.2015 20:22
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.