Učíme sa Python – časť 8. (Listy 2)

0

Riešenie domácej úlohy

Začnime najprv domácou úlohou z minulej časti. Majme list čísel:

listCisel = [5, 11, 13, 19, 2, 5, 4, 11, 28, 4, 24]

Najprv sme chceli vedieť sumu čísel v našom liste. Tú môžme nájsť nasledovne:

def vratSumuCisel(cisla):
    suma = 0
    for cislo in cisla:
        suma += cislo
    
    return suma

Keď chceme spočítať sumu, tak si najprv musíme vytvoriť pomocnú premennú, do ktorej ju budeme ukladať – na to je premenná suma. Potom potrebujeme prejsť cez náš list a každé jedno číslo postupne pripočítame k našej sume. Nemôžme zabudnúť ani na return, pretože inak by sme sa k našej sume nedostali.

Keď máme sumu, tak priemer sa dá vypočítať veľmi jednoducho. Pripomeňme si iba, že funkcia len() nám vráti veľkosť (počet prvkov) daného listu.

def vratPriemerCisel(cisla):
    suma = vratSumuCisel(cisla)
    pocetCisel = len(cisla)
    
    return suma / pocetCisel

Hľadanie minimálnej a maximálnej hodnoty v liste vyzerá nasledovne:

def vratMinimum(cisla):
    minimum = float("inf")
    for cislo in cisla:
        if cislo < minimum:
            minimum = cislo

    return minimum

def vratMaximum(cisla):
    maximum = float("-inf")
    for cislo in cisla:
        if cislo > maximum:
            maximum = cislo

    return maximum

Vysvetlenie k týmto funkciám môžes nájsť vo videu:

Zelovoc

V tejto časti spíšem pomôcky k domácej úlohe, ktorú nájdeš tu.

Takto môžeme používateľovi vypísať jeden produkt:

order = str(index + 1)
product = "mandarinka"
price = str(getProductPrice(product))

print(order + ". " + product + " - " + price))

K reťazcom (slovám – napr. „hruska“) vieme pristupovať rovnako ako k listom. To znamená, že dĺžku slova (alebo cenu produktu z domácej úlohy) vieme získať pomocou funkcie len():

product = "mandarinka"
productPrice = len(product)

print(productPrice) #vypise 10

Na beh celého programu ti môže pomôcť tento kód:

tip = 0
stastne_cislo = 7

while(tip != stastne_cislo):
    tip = int(input("Tipni si: "))

print("Gratulujeem.")

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená.