Programmeerimine
Programmeerimise õpik: http://programmeerimine.cs.ut.ee.
Tekst ekraanile
print("tere") print(2+3)
Väärtuste sisestamine klaviatuurilt
print("Ruutuvõtmise programm") a = int(input("Sisesta täisarv: ")) # input() võimaldab sisestada (tekstilisi) väärtusi # int() teisendab väärtuse täisarvuks # float() teisendab väärtuse reaalarvuks print("Arvu", a, "ruut on", a*a)
Andmete lugemine failist
Teeme ruutuvõtmise programmist teise variandi, kus arv a
loetakse sisse failist h:\arv.txt
. Enne programmi käivitamist tuleb selline fail ise tekitada!
print("Ruutuvõtmise programm") f = open("h:\\arv.txt") # faili h:\arv.txt avamine, tähiseks saab f a = int(f.readline()) # f.readline() loeb failist f sisse ühe rea print("Andmed loetud failist h:\\arv.txt") print("Arvu", a, "ruut on", a*a)
Kordused
Loeme sisse 10 reaalarvu ja väljastame nende summa.
print("Summa leidmine") print("Sisestada tuleb 10 reaalarvu") i = 1 summa = 0.0 while i <= 10: liidetav = float(input("Sisesta arv nr. " + str(i) + ": ")) # str() teeb argumendi tekstiliseks (ehk sõneks) # + koostab sõnede järjest kirjutise summa = summa + liidetav i = i + 1 print("Sisestatud arvude summa on", summa)
Tingimuslause
Küsime kasutajalt tema hinde kursuses "Matemaatiline maailmapilt" või mõni selle ekvivalent. Kui hinne on F, siis lohutame, kui on A-st E-ni, siis kiidame. Muul juhul väljastame teksti Pole korrektne hinne
h = input("Sisestage oma hinne aines Matemaatiline maailmapilt: ") if h == "A" or h == "B" or h == "C" or h == "D" or h == "E": print("Tubli! Saite aine tehtud.") elif h == "F": print("Kahju! Peate uuesti proovima.") else: print("Pole korrektne hinne.")
Andmete lugemine failist järjendisse (ühemõõtmelisse massiivi)
Failis h:\andmed.txt
esimesel real on täisarv {$N$} ja seejärel järgmisel real tühikutega eraldatult {$N$} reaalarvu. Ülesanne on väljastada need reaalarvud vastupidises järjekorras.
print("Tagurpidi kirjutamise programm") f = open("h:\\andmed.txt") N = int(f.readline()) # nüüd on arv N käes, järgnevalt tuleb teha N elemendiga järjend ja arvud sinna sisse lugeda rida = f.readline() # muutuja "rida" on tekstiline ja seal on reaalarvud tühikutega eraldatud eraldi = rida.split() # muutuja "eraldi" on järjend, mille elemendid eraldi[0], eraldi[1] jne, kuni eraldi[N-1] on failis # olnud suurused (tekstiliselt) # Need tuleks väljastada tagurpidises järjekorras, see tähendab, eraldi[N-1], eraldi[N-2] jne, kuni eraldi[0] i = N-1 while i >= 0: print(eraldi[i], end=" ") # end=" " on vajalik selleks, et iga arvu järel ei tuleks reavahetust, vaid tühik i = i - 1
Maatriksi transponeerimine
Failis h:\andmed.txt
esimesel real on täisarv {$N$} ja seejärel järgmisel {$N$} real tühikutega eraldatult {$N$} reaalarvu. Seega on failis h:\andmed.txt
ruutmaatriks. Ülesanne on väljastada see ruutmaatriks transponeerituna.
print("Transponeerimine") f = open("h:\\andmed.txt") N = int(f.readline()) maatriks = [] i = 0 while i <= N-1: rida = f.readline() eraldi = rida.split() arvurida = [] j = 0 while j <= N-1: arvurida.append(float(eraldi[j])) j = j + 1 maatriks.append(arvurida) i = i+1 # Nüüd on maatriks käes, vaja väljastada transponeerituna. i = 0 while i <= N-1: j = 0 while j <= N-1: print(maatriks[j][i], end=" ") j = j + 1 # kui algse maatriksi i-nes veerg on reana väljastatud, tuleks väljastada ka üks reavahetus print() i = i + 1
Tehke ise!
- Koostage programm, mis väljastab ekraanile Teie nime ja sünnikuupäeva.
- Koostage programm, mis küsib kasutajalt kaks reaalarvu ning väljastab nende summa.
- Koostage programm, mis loeb failist
h:\andmed.txt
sisse kolm reaalarvu ja väljastab nende aritmeetilise keskmise. Arvud on igaüks eraldi real. - Koostage programm, mis tsüklit kasutades loeb failist
h:\andmed.txt
sisse kolm reaalarvu ja väljastab nende aritmeetilise keskmise. Arvud on igaüks eraldi real. - Koostage programm, mis loeb failist
h:\andmed.txt
sisse ühe täisarvu (olgu tema tähis {$n$}) ja seejärel {$n$} reaalarvu ning väljastab nende aritmeetilise keskmise. Arvud on igaüks eraldi real. - Koostage programm, mis loeb failist
h:\andmed.txt
sisse ühe täisarvu (olgu tema tähis {$n$}) ja seejärel {$n$} reaalarvu ning väljastab, mitu neist reaalarvudest olid positiivsed. Arvud on igaüks eraldi real. - Koostage programm, mis loeb failist
h:\andmed.txt
sisse ühe täisarvu (olgu tema tähis {$n$}) ja seejärel {$n$} tühikutega eraldatud reaalarvu ning väljastab nende aritmeetilise keskmise. - Koostage programm, mis loeb failist
h:\andmed.txt
sisse ühe täisarvu (olgu tema tähis {$n$}), seejärel ühte massiivi {$n$} realt {$n$} tühikutega eraldatud reaalarvu ning teise massiivi samuti {$n$} realt {$n$} tühikutega eraldatud reaalarvu. Olgu need massiivid maatriks {$A$} ja {$B$}. Programm peab väljastama ruutmaatriksite {$A$} ja {$B$} summa.
Tarkvara
- Python https://www.python.org.