def poisci_min_max(tab): '''Vrne par najm, najv podatek v tabeli tab.''' if len(tab) == 0: return (None, None) # noben element v prazni tabeli ni nam. oz. najv. if len(tab) == 1: return (tab[0], tab[0]) if len(tab) == 2: if tab[0] > tab[1]: return (tab[1], tab[0]) else: return (tab[0], tab[1]) # problem ni majhen sreda = len(tab) // 2 prvi_del = tab[:sreda] drugi_del = tab[sreda:] (najm1, najv1) = poisci_min_max(prvi_del) (najm2, najv2) = poisci_min_max(drugi_del) # vzamemo manjšega iz obeh delov tabele if najm1 < najm2: r1 = najm1 else: r1 = najm2 # vzamemio vecjega iz obeh delov tabele if najv1 > najv2: r2 = najv1 else: r2 = najv2 return (r1, r2) # glavni program meritve = [12, 5, 6, 78, 34, 54, 76, 8576, 67, 89, 20, 34, 213] najm_pod, najv_pod = poisci_min_max(meritve) print(f'Najmanjsi je {najm_pod}, najvecji pa {najv_pod}')