Advertisement
neogz

POK - Niz, unos, ispis, najveci i najblizi clan

Aug 25th, 2014
214
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.01 KB | None | 0 0
  1. /*
  2.     Napišite program u kojem ćete deklarirati niz od 5 cjelobrojnih elemenata te uz pomoć:
  3.  
  4.     ·         funkcije: void unos (int *, int); omogućiti unos elemenata niza
  5.     ·         funkcije: void ispis (int *, int); omogućiti ispis elemenata niza
  6.     ·         funkcije: int * najveci (int *, int); vratiti adresu najvećeg elementa u nizu; obavezno provjerite je li funkcija vratila korektnu adresu;
  7.     ·         funkcije: int * slican (int *, int); vratiti adresu elementa u nizu koji je najbliži vrijednosti 101.
  8. */
  9. #include <iostream>
  10. using namespace std;
  11.  
  12. char crt[] = "\n---------------------------------------------------------------------------\n";
  13.  
  14. void unos(int * niz, int max)
  15. {  
  16.     for (int i = 0; i < max; i++)
  17.     {
  18.         cout << i + 1 << ". -> ";
  19.         cin >> niz[i];
  20.     }
  21. }
  22. void ispis(int * niz, int max)
  23. {
  24.     for (int i = 0; i < max; i++)
  25.     {
  26.         cout << "    "<< niz[i] << "\t\t";
  27.     }
  28. }
  29. void ispisadresa(int * niz, int max)
  30. {
  31.     for (int i = 0; i < max; i++)
  32.     {
  33.         cout << &niz[i] << "\t";
  34.     }
  35. }
  36. int * najveci(int * niz, int max)
  37. {
  38.     int big = niz[0], index = 0;
  39.     for (int i = 1; i < max; i++)
  40.     {
  41.         if (niz[i]>big)
  42.         {
  43.             big = niz[i];
  44.             index = i;
  45.         }
  46.     }
  47.    
  48.     return &niz[index];
  49. }
  50. int * slican(int * niz, int max)
  51. {
  52.     int razlika = abs(niz[0]-101), index = 0;
  53.     for (int i = 1; i < max; i++)
  54.     {
  55.         if (razlika > abs(niz[i] - 101))
  56.         {
  57.             razlika = abs(niz[i] - 101);
  58.             index = i;
  59.         }
  60.     }
  61.     return &niz[index];
  62. }
  63.  
  64. int main(){
  65.  
  66.     const int max = 5;
  67.     int niz[max];
  68.     int *pok = niz;
  69.    
  70.     cout << "Unesite vrijednosti niza: " << endl;
  71.     unos(pok, max);
  72.     cout << crt;
  73.  
  74.     cout << "Vas niz je: " << endl;
  75.     ispis(pok, max);
  76.     cout << crt;
  77.  
  78.     cout << "Adrese clanova vaseg niza su: " << endl;
  79.     ispisadresa(pok, max);
  80.     cout << crt;
  81.  
  82.     cout << "Najveci clan niza je: " << endl << *najveci(niz, max) << " - "<< najveci(niz, max);
  83.     cout << crt;
  84.  
  85.     cout << "Najblizi clan niza broju 101 je: " << endl << *slican(niz, max) << " - " << slican(niz, max);
  86.     cout << crt;
  87.  
  88.     system("pause>null");
  89.     return 0;
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement