Põnevamaid programmeerimisülesandeid võib leida näiteks Informaatikaolümpiaadide tööde hulgast. Need on teinekord küll üsna keerukad, vaadata võib põhikooli ja algajate töid.
Olümpiaadi esimese ülesande jõhker ja kindlasti paremaks tehtav versioon oleks selline:
#!/usr/bin/python
# -*- coding: utf-8 -*-
sisu = []
numbrid = []
# Kiire faili sisu lugemine
for joon in open("vaadid.sis", "r"):
sisu=joon.split()
numbrid.append(int(sisu[0]))
numbrid.append(int(sisu[1]))
fh = open("vaadid.val", 'a')
if (numbrid[0]
else :
fh.write("1--2\n")
else :
if (numbrid[1]>numbrid[3]) :
fh.write("1<-2\n")
else :
fh.write("1--2\n")
if (numbrid[0]
else :
fh.write("1--3\n")
else :
if (numbrid[1]>numbrid[3]) :
fh.write("1<-3\n")
else :
fh.write("1--3\n")
if (numbrid[2]
else :
fh.write("2--3\n")
else :
fh.write("2--3\n")
fh.close()
Vaatame järgmisel korral edasi kuidas olümpiaadi näidislahendus välja näeb ja püüame selle Pythoniks “tõlkida”.
Tegutsesin edasi ka meie Galaktika programmiga, selle tulemus võiks olla selline:
galaktika7