# coding=utf-8 import server mod = server.problems.load_language('python', 'sl') name = 'Največji' slug = 'Največji' description = '''\
Napišite funkcijo max_val(xs)
, ki vrne največje število v seznamu xs
.
>>> max_val([5, 1, -6, -7, 2]) 5''' function = ['''\
Napišite definicijo funckcije max_val(xs)
Definicijo funkcije začnemo z def
, temu sledi ime, potem oklepaji,
v katerih naštejemo argumente funkcije, nato zaklepaj in na koncu dvopičje
def max_val(xs): # program, ki poišče največjega v xs'''] main_plan = ['''\
Ideja: po vrsti pogledamo vse elemente in sproti hranimo največjega.
''', '''\Potrebovali bomo zanko!
najvecji = prvi element od xs for x in xs: ce je x > najvecji: najvecji postane x izpisi najvecjega'''] return_clause = ['''\
Namesto, da izpišemo rezultat, ga vračamo s stavkom return
.
Najprej poskusite napisati program (brez funkcije), ki v xs
poišče največji element
xs = [5, 1, -6, -7, 2] # sledi program, ki izpiše največjega v xs'''], main_plan, ['''\
Napišite funkcijo tako, da vsebuje napisani program.
''', '''\Funkcijo testirajte!
# najprej definicija funkcije def max_val... s1 = [5, 1, -6, -7, 2] naj_elt = max_val(s1) print(naj_elt) s2 = [-5, -1, 6, 7, -2] naj_elt = max_val(s2) print(naj_elt)'''], function, return_clause] for_loop = ['''\
Preglejte elemente z zanko
. ''', '''\for x in xs: print (x)'''] if_clause = ['''\
Preverite, če je trenutni element večji od največjega
''', '''\if x > najvecji: najvecji = x'''] hint = { 'no_def': function, 'no_return': return_clause, 'for_loop': for_loop, 'if_clause': if_clause, 'final_hint': '''\
Odlično, naloga rešena! Še zanimivost: Python ima funkcijo max
že vgrajeno:
def max_val(xs): return max(xs)''', 'not_int': '''\
Funkcija ne vrača števila
''', 'return_first': '''\Funkcija vrača prvi element v seznamu''', 'return_last': '''\
Funkcija vrača zadnji element v seznamu.''', 'return_indent': '''\
Ali imaš stavek return
znotraj zanke?
V tem primeru se lahko zgodi, da se zanka ne izteče do konca.