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
Izpisi

Izpisi


Uvodni izpisi

1. podnaloga

V Pythonu izhodne podatke izpišemo z ukazom print. Kar želimo izpisati, napišemo med oklepaje ukaza.

Poglejmo si primer enostavnega izpisa, ki samo izpiše dano število.

  print(62)

Sedaj še sami napišite program, ki bo izpisal vašo starost.

Uradna rešitev

print(25)

2. podnaloga

Iz standardnega vhoda lahko podatke preberemo in jih nato glede na naše želje tudi obdelujemo. Standardni vhod je naša interaktivna konzola. Podatke preberemo z ukazom input. Prebrane podatke si lahko shranimo v spremenljivke.

Recimo, da vemo, da bomo v interaktivno konzolo vpisali število, s katerim bomo kasneje računali. Naša koda, ki prebere vpisano število, je taka:

stevilo = input()

Z ukazom input dobimo niz, čeprav bi morda vpisali število. Če vemo, da je podatek število, lahko niz enostavno spremenimo v število tako, da napišemo ukaz int(). V oklepaje napišemo niz, ki ga želimo pretvoriti v število. Poglejmo si primer.

stevilo = input()
moje_stevilo = int(stevilo)

Vidimo, da se spremenljivki stevilo in moje_stevilo iz zgornjega primera razlikujeta le v tipu. Kodo lahko napišemo tudi v eni vrstici.

moje_stevilo = int(input())

Naj bo število, ki ga vpišemo, naša starost. Zanima nas, koliko bomo stari čez 5 let. Želimo, da nam računalnik to izpiše.

starost = int(input())
starost += 5
print(starost)

Napišite program, ki bo prebral vašo starost in izpisal, koliko ste bili stari pred 23-imi leti.

Opomba: Ko naloge, ki čakajo na vnos, nalagamo na Toma, običajno najprej poženemo napisano kodo. Nato računalnik čaka na naš vnos. V interaktivno konzolo vnesemo zahtevane podatke, šele nato se naša rešitev naloži na Toma.

Uradna rešitev

starost = int(input())
print(starost - 23)

3. podnaloga

Če želimo uporabniku programa sporočiti, kakšen podatek naj vnese, svoje besedilo napišemo kot niz pri ukazu input.

Zgled:

input('Vnesite zahtevan podatek: ')

Napišite program, ki vas bo vprašal po starosti in nato izpisal, koliko ste bili stari pred 23-imi leti. Morda boste pri tem morali število pretvoriti v niz. To storite z ukazom str().

Primer:

Koliko ste stari? 71
Pred 23-imi leti ste imeli 48 let.

Pri reševanju boste morali združiti kakšen niz. Nize lahko združujemo na več načinov. Zaenkrat se naučimo združevanja z operatorjem +. Primer:

>>> 'Danes ' + 'je ' + 'lep ' + 'sončen dan.'
'Danes je lep sončen dan.'

Uradna rešitev

vnos = input('Koliko ste stari? ')
starost = int(vnos)
vcasih = starost - 23
print('Pred 23-imi leti ste imeli ' + str(vcasih) + ' let.')

4. podnaloga

Sedaj znamo uporabljati ukaza input in print. Vsak ukaz lahko v istem programu uporabimo večkrat.

Napišite program, ki bo z vami na hitro poklepetal. Najprej naj vas program pozdravi in se predstavi. Nato naj vas vpraša po imenu in odvrne, da mu je vaše ime všeč. Potem naj vas povpraša, kaj ste jedli pri včerajšnjem kosilu. Odgovori naj, da je to njegova najljubša hrana. Ker se programu mudi, naj nato zaključi pogovor.

Primer:

Pozdravljeni, jaz sem Robotko!
Kako vam je ime? Kristina.
Kristina, vaše ime mi je všeč.
Kaj ste imeli včeraj za kosilo? Rižoto.
To je moja najljubša hrana!
Žal se mi mudi. Želim vam prijeten dan!

Uradna rešitev

print('Pozdravljeni, jaz sem Robotko!')
ime = input('Kako vam je ime? ')
print(ime + ', vaše ime mi je všeč.')
input('Kaj ste imeli včeraj za kosilo? ')
print('To je moja najljubša hrana!')
print('Žal se mi mudi. Želim vam prijeten dan!')

Smrečice

1. podnaloga

Petvrstično smrečico lahko v Pythonu izpišemo z naslednjim programom:

print('*')
print('**')
print('***')
print('****')
print('*****')

Sestavite program, ki izpiše osemvrstično smrečico.

Opomba: Podnaloge bi lahko rešili z zanko for, ki jo bomo spoznali kasneje v poglavju o for zanki.

Uradna rešitev

print('*')
print('**')
print('***')
print('****')
print('*****')
print('******')
print('*******')
print('********')

2. podnaloga

Program za izpis osemvrstične smrečice popravite tako, da namesto niza z $n$ zvezdicami uporabite izraz n * '*'. Ta izraz je sestavljen iz števila, znaka za množenje in niza '*'.

Primer: namesto niza '*****' uporabite izraz 5 * '*'. To predstavlja enak niz.

Uradna rešitev

print('*')
print(2 * '*')
print(3 * '*')
print(4 * '*')
print(5 * '*')
print(6 * '*')
print(7 * '*')
print(8 * '*')

3. podnaloga

Osemvrstično smrečico izpišite z enim samim klicem funkcije print.

Namig: znak za prelom vrstice je '\n'.

Uradna rešitev

print(
    '*\n**\n***\n****\n*****\n******\n*******\n********'
)

4. podnaloga

Osemvrstično smrečico izpišite še desno poravnano. Petvrstična desno poravnana smrečica izgleda takole:

    *
   **
  ***
 ****
*****

Uradna rešitev

print(7 * ' ' + '*')
print(6 * ' ' + 2 * '*')
print(5 * ' ' + 3 * '*')
print(4 * ' ' + 4 * '*')
print(3 * ' ' + 5 * '*')
print(2 * ' ' + 6 * '*')
print(1 * ' ' + 7 * '*')
print(8 * '*')

5. podnaloga

Osemvrstično smrečico izpišite še sredinsko poravnano in z razmaki. Petvrstična smrečica z razmaki izgleda takole:

    *
   * *
  * * *
 * * * *
* * * * *

Namig: levi rob je enak kot pri desno poravnani smrečici, za vsakim osnovnim znakom pa je presledek.

Uradna rešitev

print(7 * ' ' + '* ')
print(6 * ' ' + 2 * '* ')
print(5 * ' ' + 3 * '* ')
print(4 * ' ' + 4 * '* ')
print(3 * ' ' + 5 * '* ')
print(2 * ' ' + 6 * '* ')
print(1 * ' ' + 7 * '* ')
print(8 * '* ')
Mesto objave ob koncu projekta 15.9.2018