Materiał z książki - wartość najwyższa i najniższa. Problem ze zrozumieniem.

0

Uczę się pythona z książki Roba Miles-a i mam pewien problem. Pokazał sposób na wyciągnięcie z listy wartości najwyższej i najniższej.

sales = [10, 1, 8, 7, 5, 21, 31, 101, 22] #dla potrzeb na szybko przygotowałem listę

def highest_and_lowest():
    highest = sales[0]
    lowest = sales[0]
    for sales_value in sales:
        if sales_value > highest:
            highest = sales_value
        if sales_value < lowest:
            lowest = sales_value
    print(f'Wartość największa to: {highest}')
    print(f'Wartość najmniejsza to: {lowest}')

Dalej nie potrafię zrozumieć jak program doszedł do tej wartości najwyższej i najniższej.
Czy ktoś może mi wytłumaczyć jakie procesy się tu odbywają?
Proszę o nie informowanie mnie, że są inne metody na to - wiem o tym - autorowi raczej chodziło o to, żeby nabyć wprawy w logicznym myśleniu.

0
  1. Zakładasz ze największa oraz najmniejsza wartość to pierwsza w tablicy. To są twoje wartości "aktualne max" i "aktualne min".
  2. Przechodzisz po każdym elemencie tablicy i sprawdzasz czy ten element jest większy niż twój aktualny max, jeśli jest to staje się nowym aktualnym maxem. Analogicznie robisz dla min.
  3. Po przejściu przez wszystkie elementy tablicy twoje zmienne zawierają wartość największą oraz najmniejszą.
  4. Zastanów się czy programowanie jest dla ciebie. Serio.

Zresztą wykonaj ten algorytm na żywo po prostu. Weź do ręki talię kart, potasuj, obróć je tyłem, odkrywaj po jednej karcie po kolei i spróbuj na koniec uzyskać największą oraz najmniejszą.

0
Shalom napisał(a):
  1. Zakładasz ze największa oraz najmniejsza wartość to pierwsza w tablicy. To są twoje wartości "aktualne max" i "aktualne min".
  2. Przechodzisz po każdym elemencie tablicy i sprawdzasz czy ten element jest większy niż twój aktualny max, jeśli jest to staje się nowym aktualnym maxem. Analogicznie robisz dla min.
  3. Po przejściu przez wszystkie elementy tablicy twoje zmienne zawierają wartość największą oraz najmniejszą.
  4. Zastanów się czy programowanie jest dla ciebie. Serio.

Zresztą wykonaj ten algorytm na żywo po prostu. Weź do ręki talię kart, potasuj, obróć je tyłem, odkrywaj po jednej karcie po kolei i spróbuj na koniec uzyskać największą oraz najmniejszą.

Zastanowiłem się. Jest.
Dzięki za pomoc.

1 użytkowników online, w tym zalogowanych: 0, gości: 1