Arvutiteaduse instituut
  1. Kursused
  2. 2015/16 sügis
  3. Programmeerimine (MTAT.03.100)
EN
Logi sisse

Programmeerimine 2015/16 sügis

  • Esileht
  • Õpik
  • Projekt
  • Tärnülesanded
  • KKK
  • Viited

10. praktikum

1. Sõnapikkuste analüüs

Kirjutage programm, mis küsib kasutajalt tekstifaili nime ja tagastab analüüsi selles failis leiduvate eri pikkusega sõnade esinemissageduste kohta, nt:

 1-tähelisi sõnu esines 78 korral
 2-tähelisi sõnu esines 123 korral
 ...
 15-tähelisi või pikemaid sõnu esines 6 korral

Vihje: Uurige õpiku 9.peatükist harjutust "Täringuvisete statistika".

Lisa 1: Kõige lõpuks väljastage kõik erinevad 15-tähelised või pikemad sõnad.

Lisa 2: Laske programmil joonistada analüüsi tulemuste põhjal tulpdiagramm.

2. Listi elementide järjestamine

Ühe koduülesandena pidite kirjutama funktsiooni, mis võtab argumendiks listi ja ajab seal elemendid juhuslikult segamini.

Nüüd on ülesandeks kirjutada funktsioon minu_sort, mis võtab argumendiks suvalise pikkusega arvulisti ning järjestab listi elemendid mittekahanevalt. Midagi tagastada ei ole vaja.

Vihje: kõige lihtsam on kasutada jällegi elementide paarikaupa äravahetamist. Tõenäoliselt on vaja list mitu korda "läbi käia".

Lisa 1: Muutke lahendust nii, et argumendiks antud list jääb muutmata ja funktsioon tagastab uue, järjestatud listi.

3. Oma split

Kirjutage funktsioon minu_split, mis toimib analoogselt Pythoni sõnemeetodile split. Loodav funktsioon peaks võtma argumendiks kaks sõne (tekst ja eraldaja) ning tagastama sõnede järjendi. Nt.

 minu_split("tere vana kere", " ")

peaks tagastama järjendi

 ["tere", "vana", "kere"]

Lisa: Proovige teha oma funktsiooni veel sarnasemaks Pythoni split-ile -- korraldage nii, et kui eraldajat pole antud, siis toimub jupitamine nende kohtade pealt, kus on koos 1 või rohkem "whitespace" sümbolit (so. tühik, tabulaator või reavahetus).

4. Supermarket

Järjendisse on salvestatud kassajärjekorras olevate inimeste korvis olevate esemete arvud (küsida kasutajalt). Koostada programm, mis iga järjekorras oleva inimese korral leiab, mitmel inimesel tema ees on korvis rohkem kui kolm eset.

5. Järjestikused naturaalarvud

Kirjutage funktsioon, mis võtab argumendiks naturaalarvude listi, ning tagastab True või False vastavalt sellele, kas etteantud list sisaldab n esimest naturaalarvu, kus n on listi pikkus. Näiteks

 on_järjestikused([2,4,1,3,0]) 

peaks tagastama True

aga

 on_järjestikused([2,4,1,3]) 

peaks tagastama False (sest 0 on puudu).

NB! Funktsioon peab töötama ka tühja listi puhul!

Jah, arvutiteaduses loetakse ka 0 naturaalarvuks.

  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Tartu Ülikooli arvutiteaduse instituudi kursuste läbiviimist toetavad järgmised programmid:
euroopa sotsiaalfondi logo