\documentclass[a4paper]{article}

\usepackage[latin2]{inputenc}
\usepackage{times}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Dodatna okolja itd.
%---
                                          %% GLAVA in SPLOSNO:
\pagestyle{myheadings}
\markright{%
  \textsc{Računalništvo} I (1998/99):
  Kolokvij 9.~rožnika~1999
}

%----------------------------------------------------[ Ocenjevanje: ]
\newcommand{\Ocena}[1]{\dotfill \_\_~/~\makebox[1.5em][r]{#1}}


%--------------------------------------------------------[ Podpisi: ]
\newlength{\PolStrani}                 % ``pol strani'' za stavljenje
\setlength{\PolStrani}{0.4\textwidth}  % dveh vzporednih stolpcev
\newlength{\VisinaPodpisa}             % visina skatle podpisa
\setlength{\VisinaPodpisa}{1.5cm}
\newlength{\DolzinaPodpisa}            % dolzina crte za podpis
\setlength{\DolzinaPodpisa}{0.80\PolStrani}

\newcommand{\vPodpis}[2]{              % kdo bo podpisal dokument
  \begin{minipage}[c]{\PolStrani}
    \begin{center}
      #1
    \end{center}

    \vspace{\VisinaPodpisa}

    \begin{center}
       \rule{\DolzinaPodpisa}{0.5pt}     % crta za podpis
    \\ \parbox{\DolzinaPodpisa}{#2}
    \end{center}
  \end{minipage}
} % \vPodpis
\makeatother

\newlength{\DolzinaDatuma}             % dolzina crte za datum
\setlength{\DolzinaDatuma}{0.75\PolStrani}

%-------------------------------------------------------------------
\newcommand{\Kupljivo}{%
  \\ \mbox{} \hfill \textsc{Kupljivo:}~\rule{1.5cm}{0.5pt} \par
} % \Kupljivo

%-------------------------------------------------------------------
\newenvironment{Naloga}[1]{

  \clearpage

  \item \textsc{Naloga:} \Ocena{#1}

}{
} % Naloga

%-------------------------------------------------------------------
\newlength{\dolzOdgovora}
\newenvironment{Vprasanje}[2]{%
\setlength{\dolzOdgovora}{#2}

\noindent
\textsc{Vprašanje:} \Ocena{#1}

}{

\vspace{\dolzOdgovora}

} % Vprasanje
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\title{
   RAČUNALNIŠTVO I
\\ 1998/99
}
\author{Kolokvij}
\date{9.~rožnika~1999}

\begin{document}

\maketitle
\thispagestyle{empty}

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

\begin{center}
  \begin{minipage}{0.8\textwidth}
    \begin{enumerate}
    \item naloga: zapisi študentov v polju               \Ocena{ 20}
    \item naloga: urejanje -- prvič                      \Ocena{ 20}
    \item naloga: zapisi študentov v seznamu             \Ocena{ 24}
    \item naloga: urejanje -- drugič                     \Ocena{ 16}
    \item naloga: zapisi študentov kot predmeti          \Ocena{ 20}
      \\  dodatno vprašanje                              \Ocena{+20}
    \item[\textsc{Skupno}]                               \Ocena{100}
      \\  dodatno vprašanje                              \Ocena{+20}
    \end{enumerate}
  \end{minipage}
\end{center}

\noindent
\textsc{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!

\noindent
Čas pisanja je 2 uri (120 minut).

\noindent
Na kolokviju je dovoljena uporaba zapiskov a nikakor ,,dobrososedske``
pomoči.

\noindent
Predno pričnete pisati, spodaj vpišite svoje ime in priimek ter se
podpišite.

\vfill

\vPodpis{Ime in Priimek}{(tiskano)}
%
\hfill
%
\vPodpis{Podpis}{(študent)}

\vfil

\begin{center}
  \emph{Veliko uspeha!}
\end{center}

%--------------------------------------------------------------------
\clearpage %---------------------------------------------------------
%--------------------------------------------------------------------

\begin{enumerate}

%--------------------------------------------------------------------
\begin{Naloga}{20} %-------------------------------------------------
%
  Rdeča nit tega kolokvija so zapisi s podatki študentov in
  obdelovanje le-teh. Podatki študentov, ki nas zanimajo so:
%
  \begin{itemize}
  \item ime študenta: do 10 znakov dolg niz črk, med katerimi katerimi
    \emph{ni šumnikov}.
  \item priimek študenta: do 20 znakov dolg niz črk, med katerimi
    \emph{ni šumnikov}.
  \item letnik, v katerem je študent: celo število.
  \end{itemize}

  \begin{Vprasanje}{7}{6cm}
    Napišite definicijo tipa \texttt{tStudent}, ki popisuje enega
    študenta!
%
    \Kupljivo
  \end{Vprasanje}

  \begin{Vprasanje}{6}{2cm}
    Napišite definicijo spremenljivke \texttt{letnik}, ki popisuje 100
    študentov v letniku. Spremenljivka naj bo vektor ustreznega tipa
    in ustrezne velikosti.
  \end{Vprasanje}

  \begin{Vprasanje}{7}{3cm}
    Kakšna je razlika med \emph{tipom} in \emph{spremenljivko}?
  \end{Vprasanje}

\end{Naloga}

%--------------------------------------------------------------------
\begin{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 \emph{uredil} (\emph{ne} izpisal)
  študente v letniku. Za opis po\-sa\-mez\-nega študenta in letnika
  uporabite rešitev prejšnje naloge.

  \begin{Vprasanje}{4}{3cm}
    Kateri so vhodni in kateri izhodni parametri?
  \end{Vprasanje}

  \begin{Vprasanje}{4}{3cm}
    Kakšen je podpis funkcije?
%
    \Kupljivo
\mbox{} \hfill {\small (skupaj s prejšnjim vprašanjem)}
  \end{Vprasanje}

  \begin{Vprasanje}{12}{15cm}
    Napišite samo funkcijo!

%    \noindent {\small
%
%       \textsc{Namig:} Števec v for zanki lahko teče tudi po znakih
%       (gl.\ nalogo s semaforskim koleščkom):
%
% \begin{verbatim}
% for (znak= 'A'; znak <= 'Z'; znak++)
% \end{verbatim}
%       }

  \end{Vprasanje}

\end{Naloga}

%--------------------------------------------------------------------
\begin{Naloga}{24} %-------------------------------------------------
%
  V prejšnjih nalogah smo predstavili letnik kot vektor študentov. V
  tej nalogi pa ga bomo predstavili kot \emph{seznam študentov}.

  \begin{Vprasanje}{6}{10cm}
    Napišite definicijo glave (elementa) seznama in samega seznama
    študentov kot rekurzivne podatkovne strukture!
    \Kupljivo
  \end{Vprasanje}

  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:

  \begin{Vprasanje}{6}{5cm}
    \texttt{vrednost\_glave}:
%
    \Kupljivo
  \end{Vprasanje}

  \begin{Vprasanje}{6}{10cm}
    \texttt{naredi\_seznam}:
%
    \Kupljivo
  \end{Vprasanje}

  \begin{Vprasanje}{6}{5cm}
    \texttt{Dodaj\_zacetek}:
%
    \Kupljivo
  \end{Vprasanje}
\end{Naloga}

%--------------------------------------------------------------------
\begin{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.

  \begin{Vprasanje}{4}{3cm}
    Kakšen je podpis funkcije?
  \end{Vprasanje}

  \begin{Vprasanje}{12}{15cm}
    Napišite samo funkcijo!

    \noindent {\small
%
      \textsc{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.
    }
  \end{Vprasanje}

\end{Naloga}

%--------------------------------------------------------------------
\begin{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.

  \begin{Vprasanje}{9}{\textheight}
    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:
%
    \begin{quote}
      Priimek, Ime: letnik
    \end{quote}
  \end{Vprasanje}

  \begin{Vprasanje}{4}{\textheight}
    Za kateri lastnosti (funkciji) smo rekli na vajah, da ju ima vsak
    razred predmetov? Napišite ju še za razred študentov!
  \end{Vprasanje}

  \begin{Vprasanje}{7}{3cm}
    Kakšna je razlika med predmetom in razredom?
  \end{Vprasanje}

  \begin{Vprasanje}{+20}{\textheight}
    \textsc{Dodatna:} Napišite definicijo razreda letnik. Vsak letnik
    sestoji iz do 100 študentov (predmetov iz razreda študentov).
    Poleg tega:
%
    \begin{itemize}
    \item si zna dodati novega študenta v letnik s funkcijo
      (lastnostjo) \texttt{DodajSi};
    \item se zna urediti po že prej opisanem abecednem vrstnem redu s
      funkcijo (lastnostjo) \texttt{UrediSe}.
    \item se zna izpisati s funkcijo (lastnostjo) \texttt{IzpisiSe}.
    \end{itemize}
%
    Napišite vsaj glave funkcij v razredu!
  \end{Vprasanje}

\end{Naloga}

\end{enumerate}

\end{document}
