\documentclass[a4paper]{article}
\usepackage{slovene}
\usepackage[latin2]{inputenc}

\title{Štirinajste vaje iz računalništva I}
\author{Andreja Valentan}
\date{2.3.1999}

\begin{document}

\maketitle

\begin{abstract}
  Na današnjih vajah smo si ogledali navodila za 2.\  domačo nalogo in
  jih razložili. Nato smo nadaljevali z izdelovanjem programa
  \texttt{matrika.c}.
\end{abstract}


\section{2.domača naloga}

Navodila za domačo nalogo najdemo na WWW-ju. Napisati moramo odgovore
na zastavljene naloge (v LaTeX-u) in odgovore poslati na Novičke.

\begin{itemize}
\item Prevest, povezat in pognat moramo program glede na navodila
  avtorja in preverit moramo pravilnost slednjih.

\item Pripraviti moramo načrt testiranja. Za vsak test moramo napisati
  zakaj smo vpisali te vrednosti (kaj smo s tem preverili).

\item Program moramo razdeliti na \emph{ekvivalenčne razrede} --
  vhodne podatke razdelimo na razrede. Iz vsakega ekvivalenčnega
  razreda vzamemo en podatek in preverimo ali program za ta podatek
  pravilno deluje.

\item Napisati moramo povzetek testa: ali program deluje, ali pravilno
  deluje...
\end{itemize}

Primer naloge najdemo na Novičkah.

\section{Vhodni in izhodni parametri}

Vsaka funkcija ima vhodne in izhodne parametre:

\begin{description}
\item[\textsc{Vhodni parametri}:] so tisti, ki v funkcijo vstopajo,
  vedno se prenašajo po vrednosti.
\item[\textsc{Izhodni parametri}:] kar nam funkcija vrne, prenašajo se
  po referenci ali kot rezultat funkcije (za vsak parameter se moramo
  odločiti kaj od obojega je).
\end{description}


\section{Nadaljevanje programa \texttt{matrika.c}}

Determinanto matrike bomo izračunali po naslednjih korakih:
%
\begin{enumerate}
\item Najprej preberemo matriko v dveh korakih:
%
  \begin{enumerate}
  \item preberemo dimenzijo matrike,
  \item preberemo matriko.
  \end{enumerate}
\item izpišemo matriko;
\item izračunamo determinanto matrike;
\item izpišemo vrednost determinante.
\end{enumerate}


\subsection{Funkcija \texttt{beri\_matriko}}

Kot smo povedali na prejšnjih vajah, ta funkcija nima vhodnih
parametrov.  Vrniti pa nam mora dve vrednosti: \emph{dimenzijo
  matrike} in \emph{vrednost matrike}(to sta izhodna parametra).
Napišimo glavo funkcije:
%
{\tt
\begin{verbatim}
  void beri_matriko(int *dimenzija, int matrika[max_vel][max_vel])
\end{verbatim}
}

Ker je matrika vedno prenešena po referenci pri matriki ne pišemo
\texttt{*}.

Ta funkcija naredi dve stvari:
%
\begin{enumerate}
\item prebere dimenzijo
\item prebere matriko
\end{enumerate}

Ker nam mora funkcija vrniti dve vrednosti potrebujemo še dve funkciji:
%
\begin{description}
\item[\texttt{beri\_dimenzijo}:] funkcija nima vhodnih parametrov,
  izhodni parameter je \emph{dimenzija}.

Glava funkcije:
%
{\tt
\begin{verbatim}
  int beri_dimenzijo(void)
\end{verbatim}
}

\item[\texttt{beri\_vrstico}:] ta funkcija ima za vhodni podatek
\emph{dimenzijo matrike}, izhodni parameter je \emph{vrstica matrike}.

Glava funkcije:
%
{\tt
\begin{verbatim}
  beri_vrstico(int dimenzija, int vrstica_matrike[max_vel])
\end{verbatim}
}
\end{description}


\subsubsection{Funkcija \texttt{izpisi\_matriko}}

Vhodni parametri funkcije so \emph{dimenzija matrike} in \emph{matrika},
izhodnih parametrov ni.

Ker nam funkcija ničesar ne vrne je tipa \texttt{void}.  Glava
funkcije:
%
{\tt
\begin{verbatim}
  void izpisi_matriko(int dimenzija, int matrika[max_vel][max_vel])
\end{verbatim}
}

\subsubsection{Funkcija \texttt{determinanta\_matrike}}

Vhodni parametri funkcije so  \emph{dimenzija matrike} in \emph{matrika},
izhodni parameter je \emph{determinanta}.

Glava funkcije:
%
{\tt
\begin{verbatim}
  void izracunaj_determinanto(int dimenzija, int matrika[max_vel][max_vel])
\end{verbatim}
}

Funkcija je tipa \texttt{int}, ker se izhodni parameter prenese kot
rezultat funkcije.



\subsubsection{Glavni program main}

Koraki po katerih računamo determinanto matrike (najprej preberemo
matriko, jo izpišemo...) nam povedo kaj dela main.

Program lahko najdete na:
%
\[
 \texttt{Z:}
   \backslash\texttt{PREDAVANJA}
   \backslash\texttt{Rac1VSS}
   \backslash\textrm{Matrika.c}
\]

\end{document}
