Glavni program: glavni.cpp
// Program prebere 4 števila in izpiše največje izmed dveheh, treheh in stirih
#include <iostream>
using namespace std;
//#include "najvecje1.h" // izločena komplicirana verzija
#include "najvecje2.h" // verzija s ponovno uporabo koda
int main()
{
int a, b, c, d;
// vnos podatkov
cout << "Vnesi štiri števila: ";
cin >> a >> b >> c >> d;
// izpis največjih števil
cout << "Največje izmed prvih dveh števil je: " << najvecje2(a, b) << endl;
cout << "Največje izmed prvih treh števil je: " << najvecje3(a, b, c) << endl;
cout << "Največje število je: " << najvecje4(a, b, c, d) << endl;
return 0;
}
Datoteki z različno implementacijo funkcij: najvecje1.h in najvecje2.h
#ifndef NAJVECJE234
#define NAJVECJE234
// funkcije, za iskanje največjega števila izmed dveh, treh ali štirih števil
// funkcija za iskanje največjega izmed dveh števil
int najvecje2(int st1, int st2)
{
if (st1 > st2)
{
return st1;
}
else
{
return st2;
}
}
// funkcija za iskanje največjega izmed treh števil
int najvecje3(int st1, int st2, int st3)
{
if (st1 > st2)
{
if (st1 > st3)
{
return st1;
}
else
{
return st3;
}
}
else // drugo večje od prvega
{
if (st2 > st3)
{
return st2;
}
else
{
return st3;
}
}
}
// funkcija za iskanje največjega izmed štirih števil
int najvecje4(int st1, int st2, int st3, int st4)
{
int trenutnoNajvecji;
// poiščemo največjega izmed prvih dveh
if (st1 > st2)
{
trenutnoNajvecji = st1;
}
else
{
trenutnoNajvecji = st2;
}
// največjega izmed prvih dveh primerjamo s tretjim
if (st3 > trenutnoNajvecji)
{
trenutnoNajvecji = st3;
}
// največjega izmed prvih treh primerjamo s četrtim
if (st4 > trenutnoNajvecji)
{
trenutnoNajvecji = st4;
}
return trenutnoNajvecji;
}
#endif
|
#ifndef NAJVECJE234
#define NAJVECJE234
// funkcije, za iskanje največjega števila izmed dveh, treh ali štirih števil
// funkcija za iskanje največjega izmed dveh števil
inline int najvecje2(int st1, int st2)
{
if (st1 > st2)
{
return st1;
}
else
{
return st2;
}
}
// funkcija za iskanje največjega izmed treh števil
inline int najvecje3(int st1, int st2, int st3)
{
return najvecje2(najvecje2(st1, st2), st3);
}
// funkcija za iskanje največjega izmed štirih števil
inline int najvecje4(int st1, int st2, int st3, int st4)
{
return najvecje2(najvecje3(st1, st2, st3), st4);
}
#endif
|