Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)
Avatar
ra3sk
Člen
Avatar
ra3sk:8.12.2015 19:47

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:8.12.2015 20:01

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:8.12.2015 20:22

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.