Projekt Pronal Projekt Pronal

Kazalo:
Sofinasiranje projekta
Starejši - učbenik...
Tekmovanja...
Tekmovanja - dopolni...
Tekmovanja - Parsons...
Tekmovanja - popravi...
Starejši - zbirka nalog
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


Smrečice

1. podnaloga

Smrečico smo se naučili izpisati pri nalogah v učbeniku.

Izpišite devetvrstično sredinsko poravnano smrečico.

Uradna rešitev

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

2. podnaloga

V božičnem času smrečico okrasimo. Okrasite devetvrstično sredinsko poravnano smrečico. Petvrstična sredinsko poravnana okrašena smrečica izgleda takole:

    *
   *°*
  *°*°*
 *°*°*°*
*°*°*°*°*

Namig: Presledke zamenjajte z okraskom.

Uradna rešitev

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

Šahovnice

1. podnaloga

Izpišite polno kvadratno igralno ploščo, sestavljeno iz znaka '+'. Velikost plošče naj bo shranjena v spremenljivki n. Na primer, če je n = 4, naj se izpiše:

++++
++++
++++
++++

Vaša igralna plošča naj bo velikosti vsaj $7 \times 7$ znakov.

Uradna rešitev

n = 7
vrstica = n * '+' + '\n'
plosca = n * vrstica
print(plosca)

2. podnaloga

Izpišite prazno igralno ploščo brez polj. Obrobljena naj bo z znakom '+'. Velikost plošče naj bo shranjena v spremenljivki n. Na primer, če je n = 4, naj se izpiše:

++++
+  +
+  +
++++

Vaša igralna plošča naj bo velikosti vsaj $7 \times 7$ znakov.

Uradna rešitev

n = 7
polna = n * '+' + '\n'
prazna = '+' + (n - 2) * ' ' + '+' + '\n'
plosca = polna + (n - 2) * prazna + polna
print(plosca)

3. podnaloga

Napišite program, ki izpiše šahovsko desko razsežnosti $2n \times 2n$. Črna polja naj bodo sestavljena iz znakov '@', bela polja pa iz znakov '.'.

Podana naj bo spremenljivka n. Če je n = 3, naj se izpiše:

@.@.@.
.@.@.@
@.@.@.
.@.@.@
@.@.@.
.@.@.@

Uradna rešitev

n = 7
liha_vrstica = n * '@.'
soda_vrstica = n * '.@'
sahovnica = n * (liha_vrstica + '\n' + soda_vrstica + '\n')
print(sahovnica)

4. podnaloga

Napišite program, ki izpiše šahovsko desko razsežnosti $2n \times 2n$. Črna polja naj bodo sestavljena iz znakov '@', bela polja pa iz znakov '.'. Velikost polj naj bo shranjena v spremenljivki m. Podana mora biti tudi spremenljivka n.

Primer: če je m = 2 in n = 3, naj se izpiše:

@@..@@..@@..
@@..@@..@@..
..@@..@@..@@
..@@..@@..@
@@..@@..@@..
@@..@@..@@..
..@@..@@..@@
..@@..@@..@@
@@..@@..@@..
@@..@@..@@..
..@@..@@..@@
..@@..@@..@@

Uradna rešitev

m = 5
n = 4
liha_vrstica = n * (m * '@' + m * '.')
soda_vrstica = n * (m * '.' + m * '@')
sahovnica = n * (m * (liha_vrstica + '\n') + m * (soda_vrstica + '\n'))
print(sahovnica)

5. podnaloga

Napišite program, ki izpiše šahovsko desko razsežnosti $2n \times 2n$, na kateri so črna polja oblike

####
####
####
####

bela pa oblike

++++
+  +
+  +
++++

Velikost polj naj bo shranjena v spremenljivki m. Podana mora biti tudi spremenljivka n.

Primer: če je m = 3 in n = 2, naj se izpiše:

###+++###+++
###+ +###+ +
###+++###+++
+++###+++###
+ +###+ +###
+++###+++###
###+++###+++
###+ +###+ +
###+++###+++
+++###+++###
+ +###+ +###
+++###+++###

Uradna rešitev

m = 3
n = 2

crna = m * '#'
bela = m * '+'
bela_prazna = '+' + (m - 2) * ' ' + '+'
liha = n * (crna + bela) + '\n' + (m - 2) * ((crna + bela_prazna) * n + '\n') + n * (crna + bela) + '\n'
soda = n * (bela + crna) + '\n' + (m - 2) * ((bela_prazna + crna) * n + '\n') + n * (bela + crna) + '\n'

plosca = n * (liha + soda)

print(plosca)

Agent 007

1. podnaloga

Napišite program, ki prebere ime in priimek in izpiše predstavitev v stilu agenta 007. Pri tem morata biti tako vnos kot izpis vsebinsko (tudi kar se presledkov tiče) točno taka, kot je razvidno iz zgleda.

Zgled:

Vnesi ime: Janez
Vnesi priimek: Blond
Jaz sem Blond, Janez Blond.

Uradna rešitev

ime = input('Vnesi ime: ')
priimek = input('Vnesi priimek: ')
print('Jaz sem {0}, {1} {0}.'.format(priimek, ime))

# namesto zgornjega ukaza print, lahko uporabimo enega izmed spodnjih dveh
# print('Jaz sem', priimek + ',', ime, priimek + '.')
# print('Jaz sem ' + priimek + ', ' + ime + ' ' + priimek + '.')
Mesto objave ob koncu projekta 15.9.2018