5. naloga

Golovec

Na predoru Golovec so ob vhodu in izhodu iz predora namestili merilnike, ki ob vstopu ali izstopu iz predora zabeležijo registrsko številko avtomobila in čas vstopa v sekundah od začetka dneva. S pomočjo teh podatkov lahko, ko avtomobil zapelje iz predora, izračunamo njegovo povprečno hitrost pri vožnji skozi predor in odkrijemo tiste, ki so vozili prehitro.

Napiši podprogram (oz. funkcijo), ki ga bo sistem poklical vsakič, ko bo kak avtomobil zapeljal v predor ali iz njega. Tvoj podprogram naj ob izstopu avtomobila iz predora izračuna njegovo povprečno hitrost in če ta presega 22 m/s, naj izpiše registrsko številko tega avtomobila. Za shranjevanje podatkov si lahko deklariraš tudi globalne spremenljivke in opišeš, kako jih je treba inicializirati. Tvoj podprogram naj bo take oblike:

procedure Golovec(regStevilka: string; cas: integer);    { v pascalu }
void Golovec(char* regStevilka, int cas);
                                /* v C/C++ */
void Golovec(string regStevilka, int cas);               // v C++
public static void Golovec(String regStevilka, int cas); // v javi
public static void Golovec(string regStevilka, int cas); // v C#
def Golovec(regStevilka, cas): ...                      
# v pythonu

Registrska številka je dolga največ 7 znakov. V predoru je največ 300 vozil hkrati in vsa imajo različne registrske številke. Vsako vozilo, ki kdaj zapelje v predor, prej ali slej zapelje tudi iz njega; za vsako tako vozilo bo sistem poklical naš podprogram natanko dvakrat: prvič, ko vozilo zapelje v predor, in drugič, ko zapelje iz njega. Vozila iz predora ne izstopajo nujno v enakem vrstnem redu, v kakršnem so vstopila vanj. Predor je dolg 622 m, ponoči pa v njem vedno potekajo nujna vzdrževalna dela, tako da naj te ne skrbi, da bi kakšen avtomobil vozil skozi predor ob polnoči.