import server mod = server.problems.load_language('python', 'sl') id = 216 name = 'Vsota deliteljev' slug = 'Vsota deliteljev' description = '''\

Napiši program, ki izpiše vsoto vseh deliteljev števila, ki ga vnese uporabnik. Med delitelji izpustite vnešeno število. Primer:

>>> Vpiši število: 6
Vsota deliteljev: 6
''' input_clause = ['''\ Uporabi funkcijo input. '''] range_function = ['''\ Uporabi funkcijo range(a,b) ''', '''\

Funkcija range(a, b) pripravi seznam števil od a do števila b-1. Poskusi!

''', '''\

Z zanko for se sprehodi čez elemente seznama oz. v našem primeru čez vsa števila od a do b-1.

'''] divisor = ['''\

Operator % vrne ostanek pri deljenju.

''', '''\
>>> 5%3
2
>>> 17%8
1
''', '''\

Če je ostanek pri deljenju števila a s številom b enak 0, potem b deli število a.

''', '''\
if a%b == 0:
    # b je delitelj števila a
'''] summing = ['''\

Če hočemo delitelje prišteti vsoti, moramo imeti vsoto nekje shranjeno. Torej potrebujemo spremenljivko.

''', '''\

Nekako tako:

vsota = 0
for ....
    if ...
        vsota += d # d deli izbrano število
'''] plan = ['''\

Plan bo podoben kot v prejšnji naloge, kjer smo delitelje izpisali. Tokrat delitelja ne izpišemo, ampak ga prištejemo vsoti.

''', summing] hint = { 'input_clause': input_clause, 'range_function': range_function, 'printing': ['''\

Izpiši rezultat.

'''], 'divisor': divisor, 'last_number': ['''\

Tokrat med delitelji ne upoštevamo vnešenega števila!

'''], 'final_hint': ['''\

Naloga rešena!
Nakoč bomo znali to napisati krajše:

n = int(input("Vpiši število: "))
print(sum(i for i in range(1, n) if n % i == 0))
'''], 'summing': summing, 'zero_division': [mod.general_msg['error_head'], mod.general_msg['general_exception'], '''\

Deljenje z nič ni dovoljeno!

''', '''\

Računanje ostanka z operatorjem % je tudi deljenje.'''] }