diff options
author | Martin <martin@leo.fri1.uni-lj.si> | 2015-09-22 12:55:35 +0200 |
---|---|---|
committer | Martin <martin@leo.fri1.uni-lj.si> | 2015-09-22 12:55:35 +0200 |
commit | 4841519d3fb3a76b37529705b4a1ca96fbb6d6f6 (patch) | |
tree | 516de505d9836aa72da6371951ef2e03d5a1e259 /python/problems/functions/greatest_absolutist/sl.py | |
parent | 0d45ae47238808ac4659a81c7dc94aba88c810f5 (diff) |
Added two problems with functions. Their description is not finished yet.
Diffstat (limited to 'python/problems/functions/greatest_absolutist/sl.py')
-rw-r--r-- | python/problems/functions/greatest_absolutist/sl.py | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/python/problems/functions/greatest_absolutist/sl.py b/python/problems/functions/greatest_absolutist/sl.py new file mode 100644 index 0000000..77815c0 --- /dev/null +++ b/python/problems/functions/greatest_absolutist/sl.py @@ -0,0 +1,100 @@ +# coding=utf-8 +import server +mod = server.problems.load_language('python', 'sl') + + +id = 196 +name = 'Največji absolutist' +slug = 'Največji absolutist' + + +description = '''\ +<p>Napišite funkcijo <code>naj_abs(xs)</code>, ki vrne največje število po +absolutni vrednosti v seznamu <code>xs</code>.</p> +<pre> +>>> naj_abs([5, 1, -6, -7, 2]) +-7 +</pre> +''' + +function = ['''\ +<p>Napišite <b>definicijo funkcije</b> <code>naj_abs(xs)</code>.</p>''', + '''\ +<p>Definicijo funkcije začnemo z <code>def</code>, temu sledi ime, potem oklepaji, +v katerih naštejemo argumente funkcije, nato zaklepaj in na koncu dvopičje</p>''', + '''\ +<pre> +def naj_abs(xs): + # poišči največje absolutno število v xs + +s = [5, 1, -6, -7, 2] +print (naj_abs(s)) +</pre>'''] + +main_plan = ['''\ +<p><b>Plan</b>: po vrsti pogledamo vse elemente in sproti hranimo največjega +(glede na absolutno vrednost).</p>''', + '''\ +<pre> +najvecji = prvi element od xs +for x in xs: + če je x večji od najvecji po absolutni vrednosti: + najvecji postane x +vrni najvecji +</pre>'''] + +return_clause = ['''\ +<p>Namesto, da izpišemo rezultat, ga vračamo s stavkom <code>return</code>.</p>'''] + +plan = [function, + main_plan, + return_clause] + +for_loop = ['''\ +<p>Preglejte elemente z zanko</p>. +''', + '''\ +<pre> +for x in xs: +</pre>'''] + + +if_clause = ['''\ +<p>Preverite, če je trenutni element večji od največjega (po absolutni vrednosti)</p>''', + '''\ +<pre> +if abs(x) > abs(najvecji): + najvecji = x +</pre>'''] + + +hint = { + 'no_def': function, + + 'no_return': return_clause, + + 'for_loop': for_loop, + + 'if_clause': if_clause, + + 'not_int': '''\ +<p>Funkcija ne vrača števila</p>''', + + 'return_first': '''\ +<p>Funkcija vrača prvi element v seznamu''', + + 'return_last': '''\ +<p>Funkcija vrača zadnji element v seznamu.''', + + 'return_greatest': '''\ +<p>Funkcija vrača največji pozitivni element v seznamu (ne pa največji po absolutni vrednosti).''', + + 'return_positive': '''\ +<p>Funkcija napačno vrača absolutno vrednost največjega števila.''', + + 'return_indent': '''\ +<p>Ali imate stavek <code>return</code> znotraj zanke? +V tem primeru se lahko zgodi, da se zanka ne izteče do konca.</p>''' + +} + |