RAČUNALNIŠTVO I 1998/99

Kolokvij

9. rožnika 1999

Kolokvij sestoji iz petih nalog, katerih skupno število točk je 100 in 20 za dodatno nalogo. Vrednosti posameznih nalog so naznačne v spodnji tabeli.

1. naloga: zapisi študentov v polju .................... / 20

2. naloga: urejanje – prvič ............................ / 20

3. naloga: zapisi študentov v seznamu ................. / 24

4. naloga: urejanje – drugič .......................... / 16

5. naloga: zapisi študentov kot predmeti ............... / 20 dodatno vprašanje ................................. / +20

Skupno .................................................. / 100 dodatno vprašanje ................................. / +20

Opomba: Nekatere naloge so posebej označene. Pri teh nalogah lahko ,,kupite“ odgovor. Cena odgovora so vse možne točke pri tistem vprašanju, oziroma podvprašanju. Zato se za nakup odločajte preudarno in le po potrebi! Čas pisanja je 2 uri (120 minut). Na kolokviju je dovoljena uporaba zapiskov a nikakor ,,dobrososedske“ pomoči. Predno pričnete pisati, spodaj vpišite svoje ime in priimek ter se podpišite.

Ime in Priimek

(tiskano)

Podpis

(študent)

Veliko uspeha!

1. Naloga: ....................................................... / 20 Rdeča nit tega kolokvija so zapisi s podatki študentov in obdelovanje le-teh. Podatki študentov, ki nas zanimajo so:

• imeštudenta: do 10 znakov dolg nizčrk, med katerimi katerimi nišumnikov.

• priimek študenta: do 20 znakov dolg niz črk, med katerimi ni šumnikov.

• letnik, v katerem je študent: celo število. Vprašanje: .................................................... / 7 Napišite definicijo tipa tStudent, ki popisuje enega študenta!

Kupljivo:

Vprašanje: .................................................... / 6 Napišite definicijo spremenljivke letnik, ki popisuje 100 študentov v letniku. Spremenljivka naj bo vektor ustreznega tipa in ustrezne velikosti.

Vprašanje: .................................................... / 7 Kakšna je razlika med tipom in spremenljivko?

2. Naloga: ....................................................... / 20 Eno od opravil v uporabnikovem programu je izpisštudentov v letniku po abecednem redu; no ja, skoraj v abecednem redu, saj morajo biti najprej izpisani vsi tisti, katerih priimek se prična na ,,A“, nato oni na ,,B“, sledijo na ,,C“, na ,,D“ itd. Pozor, ker ni šumnikov, ni nikogar na ,,Č“! Napišite podprogram, ki bo uredil (ne izpisal) študente v letniku. Za opis posameznega študenta in letnika uporabite rešitev prejšnje naloge. Vprašanje: .................................................... / 4 Kateri so vhodni in kateri izhodni parametri?

Vprašanje: .................................................... / 4 Kakšen je podpis funkcije?

Kupljivo:

(skupaj s prejšnjim vprašanjem)

Vprašanje: .................................................... / 12 Napišite samo funkcijo!

3. Naloga: ....................................................... / 24

V prejšnjih nalogah smo predstavili letnik kot vektor študentov. V tej nalogi pa ga bomo predstavili kot seznam študentov.

Vprašanje: .................................................... / 6

Napišite definicijo glave (elementa) seznama in samega seznama študentov kot rekurzivne podatkovne strukture!

Kupljivo:

Na vajah smo se srečali s seznamom celih števil. Od tam uporabite naslednje funkcije ter jih ustrezno predelajte, da bodo uporabne za delo s seznamom študentov:

Vprašanje: .................................................... / 6

vrednost glave:

Kupljivo:

Vprašanje: .................................................... / 6

naredi seznam:

Kupljivo:

Vprašanje: .................................................... / 6

Dodaj zacetek:

Kupljivo:

4. Naloga: ....................................................... / 16 Sedaj, ko imamo letnik predstavljen kot seznam študentov, bomo še za takšno predstavitev napisali funkcijo, ki bo ustrezno preuredila seznam študentov, da bodo na začetku študenti, katerih priimek se prična na ,,A“, nato na ,,B“ itd. Vprašanje: .................................................... / 4 Kakšen je podpis funkcije?

Vprašanje: .................................................... / 12 Napišite samo funkcijo!

Namig: Poglejte si, katere funkcije smo napisali na vajah za delo s seznamom celih števil in morda kakšno od njih ustrezno priredite, da bo počela, kar zahteva vprašanje. Pri pisanju uporabite tudi funkcije, ki ste jih napisali pri prejšnjem vprašanju.

5. Naloga: ....................................................... / 20 V zadnji nalogi si bomo ogledali še kako rokovati s študenti in letnikom, ki je predstavljen v predmetni obliki. V tej nalogi bomo definirali razred študetov in nato, za dodatno nalogo, še razred letnikov. Vprašanje: .................................................... / 9 Napišite definicijo razreda študentov, od katerih ima vsak vse lastnosti kot prej (ime, priimek in letnik) ter dodatno lastnost (funkcijo), da se zna izpisati v obliki:

Priimek, Ime: letnik Računalništvo I (1998/99): Kolokvij 9. rožnika 1999 8

Vprašanje: .................................................... / 4 Za kateri lastnosti (funkciji) smo rekli na vajah, da ju ima vsak razred predmetov? Napišite ju še za razred študentov!

Vprašanje: .................................................... / 7 Kakšna je razlika med predmetom in razredom?

Vprašanje: .................................................... / +20 Dodatna: Napišite definicijo razreda letnik. Vsak letnik sestoji iz do 100 študentov (predmetov iz razreda študentov). Poleg tega:

• si zna dodati novega študenta v letnik s funkcijo (lastnostjo) DodajSi;

• se zna urediti po že prej opisanem abecednem vrstnem redu s funkcijo (lastnostjo) UrediSe.

• se zna izpisati s funkcijo (lastnostjo) IzpisiSe. Napišite vsaj glave funkcij v razredu!