Vaje 2: Uvod, datoteke

Vse se začne z ena

Vedno se vse začne z "1". Pa se vprašajmo, kaj vidimo v tem nizu. Eno enko seveda, torej "11". Kaj pa vidimo v tem nizu? Dve enki, torej "21". Kaj pa v tem zadnjem nizu? Eno dvojko in eno enko, torej "1211". Pa zdaj? Eno enko, eno dvojko in dve enki, torej "111221". Pa zdaj?

Sestavi funkcijo, ki bo sestavila in vrnila tabelo, ki bo vsebovala prvih n členov opisanega zaporedja. Členi zaporedja naj bodo nizi (in ne števila).

Matrike

Sestavi funkcijo, izpiše dano tabelo tabel realnih števil. Funkcija naj smiselno obravnava vse posebne primere (tabela je enaka null, posamezna vrstica je enaka null, vrstice niso enakih dolžin).

Sestavi funkcijo, ki za dano tabelo tabel realnih števil preveri, ali predstavlja matriko. Preveriti mora, ali je tabela različna od null, ali so vse vrstice različne od null ter ali so vse vrstice enake dolžine.

Sestavi funkcijo, ki transponira dano matriko. Če parameter ne predstavlja matrike, naj funkcija vrne null.

Število besed

Sestavi funkcijo, ki sprejme ime datoteke in izpiše število besed v datoteki. Besede so poljubna zaporedja znakov, ločena z enim ali več presledki. Presledki so lahko tudi na začetku in na koncu vrstic. Funkcijo nato dopolni, da bo na izhodno datoteko, katere ime tudi dobi kot parameter, še izpisala vse besede, vsako v svojo vrsto.

Predor

Dana je datoteka s podatki o prometu skozi predor Golovec za en dan. V vsaki vrstici sta najprej dve celi števili s in t, nato pa še niz r. Števili s in t predstavljata sekundo v dnevu, ko je vozilo vstopilo oz. izstopilo iz predora, r pa predstavlja registrsko tablico vozila. Predpostaviš lahko, da je vozilo vstopilo in izstopilo v istem dnevu in da velja 0 ≤ s < t < 86400. Predor Golovec je dolg 622 m, omejitev hitrosti pa je 80 km/h.

Sestavi funkcijo, ki sprejme ime datoteke s podatki in ime datoteke, v katero boš zapisal izhodne rezultate. Funkcija naj iz vhodne datoteke (tukaj je primer takšne datoteke) prebere podatke in najde vsa vozila, ki so gotovo vozila prehitro, torej tista vozila, katerih povprečna hitrost je bila nad omejitvijo. V izhodno datoteko naj za vsako vozilo, ki je kršilo omejitev, napiše njegovo registrsko tablico in povprečno hitrost (na dve decimalni mesti natančno, za decimalni simbol uporabi piko). Funkcija naj vrne število vseh kršiteljev.