Projekt Pronal Projekt Pronal

Kazalo:
Sofinasiranje projekta
Starejši - zbirka nalog...
Tekmovanja...
Tekmovanja - dopolni...
Tekmovanja - Parsons...
Tekmovanja - popravi...
Starejši - učbenik
Funkcije
If stavek
Izpisi
Množice
Nizi
Pisanje in popravljanje programa
Seznami in nizi
Slovarji
Spoznajmo Python
Uvod v funkcije
Zanka for
Zanka while
Zanka for

Zanka for


Zanka for - kratka razlaga

Zanka for je podobna zanki while. Zanko while uporabljamo takrat, ko nekaj počnemo večkrat zaporedoma, vse dokler je izpolnjen pogoj za zanko. Zanko for pa navadno uporabljamo, ko vemo kolikokrat hočemo nekaj izvesti. Zanka for se navadno po nečem sprehaja in v grobem izgleda takole:

for lokalna_spremenljivka in element_za_sprehajanje:
    ukaz1
    ukaz2
    ...
    continue
    ...
    break
    ...
else:
    ukaz
    ...

Zanka for ustvari lokalno spremenljivko lokalna_spremenljivka, ki se sprehaja čez nek element_za_sprehajanje. Tako je lokalna_spremenljivka na vsakem naslednjem koraku enaka naslednjemu elementu v nekem zaporedju. Za vsak element se izvedejo vsi ukazi znotraj for zanke. Zanka se preneha izvajati, ko pridemo do ukaza break ali konca zaporedja. Zanka for ima prav tako break, continue in else. Else se izvede v primeru, ko se zanka sprehodi čez celo zaporedje. Obvezen je le for del in blok ukazov, ki mu sledi. S for zanko se lahko sprehajamo po nizih, seznamih, množicah, slovarjih, objektu, ki ga vrne funkcija range() itd.


Zanka for - naloge

1. podnaloga

Napišite program, ki s pomočjo for zanke in funkcije range() izpiše vsa soda števila med 1 in 101, vsako število posebej.

Funkcija range(zacetek, konec, korak) ima tri parametre. Ustvari iterator, v katerem se hrani zaporedje števil od vključno zacetek do vključno konec - 1 s korakom korak. Če koraka in začetka ne podamo je korak nastavljen na 1 (podamo lahko tudi negativen korak), začetek pa je enak 0. Konec je vedno obvezen.

Izpis:

  2
  4
  6
  ...
  100

Uradna rešitev

#

for st in range(2, 101, 2):
    print(st)

2. podnaloga

Napišite funkcijo veckratniki3(n), ki sešteje vse večkratnike števila 3 med 1 in vključno n. Uporabi zanko for.

>>> veckratniki3(2)
0
>>> veckratniki3(50)
408

Uradna rešitev

def veckratniki3(n):
    '''sešteje vse večkratnike števila 3 med 1 in vklucno n s pomočjo
    zanke for ter vrne seštevek'''
    sestevek = 0
    for st in range(0, n + 1, 3):
        sestevek += st
    return sestevek

3. podnaloga

Zanka for crka in beseda: se sprehodi po celotni besedi tako, da se premika po eno črko naprej.

S pomočjo zanke for napišite funkcijo dolzina(niz), ki vrne dolžino niza.

>>> dolzina('program')
7
>>> dolzina('zanimivo')
8

Uradna rešitev

def dolzina(niz):
    '''vrne dolžino niza s pomočjo for zanke'''
    dolzina_niza = 0
    for crka in niz:
        dolzina_niza += 1
    return dolzina_niza
Mesto objave ob koncu projekta 15.9.2018