daily pastebin goal
62%
SHARE
TWEET

Untitled

a guest Nov 6th, 2018 249 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. labos 2
  2. 1.: (2)
  3. /*
  4. Napišite klasu „Kontakt“ koja  predstavlja  kontakt  u  telefonskom  imeniku  s  podacima nužnim za održavanje takvog imenika (ime i prezime, telefonski broj, e-mail).  
  5. Kreirajte   polje   objekata   i   u   njega   smjestite   tri   objekta   stvorena parametarskim konstruktorom.
  6. Otvorite datoteku (ime se unosi s tipkovnice) i u nju korištenjem preopterećenog operatora za ispis upišite sadržaj ranije kreiranog polja.
  7. Za sve potrebe rada s nizovima znakova koristiti string klasu.
  8. */
  9.  
  10. #include <iostream>
  11. #include <fstream>
  12. #include <string>
  13. using namespace std;
  14.  
  15. class Kontakt
  16. {
  17.     string ime, prezime, broj, mail;
  18.     friend void operator<< (ostream&, Kontakt&);
  19. public:
  20.     Kontakt(string a, string b, string c, string d);
  21. };
  22.  
  23. Kontakt::Kontakt(string a, string b, string c, string d)
  24. {
  25.     ime = a;
  26.     prezime = b;
  27.     broj = c;
  28.     mail = d;
  29. }
  30.  
  31. void operator<< (ostream& izlaz, Kontakt& kont)
  32. {
  33.     izlaz << "Ime i prezime: " << kont.ime << " " << kont.prezime << endl << "Broj telefona: " << kont.broj << endl << "E-mail adresa: " << kont.mail << endl;
  34.     //return izlaz;
  35. }
  36.  
  37. int main()
  38. {
  39.     char datoteka[30];
  40.     Kontakt Kont[3]
  41.     {
  42.     Kontakt("Jozo", "Jozic", "0911234567", "jozojozic@gmail.com"),
  43.     Kontakt("Marko", "Markic", "0922345678", "markomarkic@gmail.com"),
  44.     Kontakt("Marija", "Maric", "0933456789", "marijamaric@gmail.com"),
  45.     };
  46.     cout << "Unesite ime datoteke: " << endl;
  47.     cin.getline(datoteka, sizeof(datoteka));
  48.     ofstream tok(datoteka);
  49.     for (int i = 0; i < 3; i++)
  50.     {
  51.         tok << Kont[i];
  52.     }
  53.     tok.close();
  54.     return 0;
  55. }
  56.  
  57. 2.: (2)
  58. /*
  59. Napiši klasu koja predstavlja vektor u trodimenzionalnom prostoru sa atributima za i, j, k komponente.
  60. Za navedenu klasu napišite podrazumijevani i parametarski konstruktor te preopteretite 4 operatora za tu klasu (1 aritmetički, 1 relacijski, 1 U/I te operator  = (pridruživanja)).
  61. U glavnoj funkciji testirajte sve operatore koje ste preopteretili (u slučaju da niste preopteretili << ispišite rezultirajuće vektore odgovarajućom metodom za ispis).
  62. */
  63.  
  64. #include <iostream>
  65. using namespace std;
  66.  
  67. class Vektor
  68. {
  69.     int i, j, k;
  70.     friend Vektor operator+(Vektor prvi, Vektor drugi);
  71.     friend bool operator==(Vektor prvi, Vektor drugi);
  72.     friend ostream& operator<<(ostream&, Vektor&);
  73. public:
  74.     Vektor();
  75.     Vektor(int x, int y, int z);
  76.     Vektor operator=(const Vektor& vekt)
  77.     {
  78.         i = vekt.i;
  79.         j = vekt.j;
  80.         k = vekt.k;
  81.         return *this;
  82.     }
  83.  
  84. };
  85.  
  86. Vektor::Vektor()
  87. {
  88.     i = 0;
  89.     j = 0;
  90.     k = 0;
  91. }
  92.  
  93. Vektor::Vektor(int x, int y, int z)
  94. {
  95.     i = x;
  96.     j = y;
  97.     k = z;
  98. }
  99.  
  100. Vektor operator +(Vektor prvi, Vektor drugi)
  101. {
  102.     Vektor zbroji;
  103.     zbroji.i = prvi.i + drugi.i;
  104.     zbroji.j = prvi.j + drugi.j;
  105.     zbroji.k = prvi.k + drugi.k;
  106.     return zbroji;
  107. }
  108.  
  109. bool operator==(Vektor prvi, Vektor drugi)
  110. {
  111.     return ((prvi.i == drugi.i) && (prvi.j == drugi.j) && (prvi.k == drugi.k));
  112. }
  113.  
  114. ostream& operator<< (ostream& izlaz, Vektor& vekt)
  115. {
  116.     izlaz << vekt.i << ", " << vekt.j << ", " << vekt.k;
  117.     return izlaz;
  118. }
  119.  
  120. int main()
  121. {
  122.     Vektor V1(1, 2, 3), V2(4, 5, 6);
  123.     cout << "Aritmeticki: " << V1 + V2 << endl;
  124.     cout << "Relacijski: " << (V1 == V2) << endl;
  125.     cout << "U/I: " << V1 << endl;
  126.     V1 = V2;
  127.     cout << "Pridruzivanje: " << (V1 == V2) << endl;
  128.     return 0;
  129. }
  130.  
  131. 3. (nije predan):
  132. /*Napišite funkciju koja vraća indeks najmanjeg elementa jednodimenzionalnog polja cijelih brojeva
  133. te nakon toga preopteretite tu funkciju tako da radi i s poljima double tipa, poljima vektora(zadatak 2) i string objektima(4 funkcije).
  134. Funkcija ne treba podrazumijevati duljinu predanog joj polja.
  135. */
  136.  
  137. //string treba vratit ascii vrijednost a vektor..?
  138.  
  139. #include <iostream>
  140. #include <string>
  141. using namespace std;
  142.  
  143. class Vektor
  144. {
  145.     int i, j, k;
  146.     friend Vektor operator+(Vektor prvi, Vektor drugi);
  147.     friend bool operator==(Vektor prvi, Vektor drugi);
  148.     friend ostream& operator<<(ostream&, Vektor&);
  149. public:
  150.     Vektor();
  151.     Vektor(int x, int y, int z);
  152.     Vektor operator=(const Vektor& vekt)
  153.     {
  154.         i = vekt.i;
  155.         j = vekt.j;
  156.         k = vekt.k;
  157.         return *this;
  158.     }
  159.  
  160. };
  161.  
  162. Vektor::Vektor()
  163. {
  164.     i = 0;
  165.     j = 0;
  166.     k = 0;
  167. }
  168.  
  169. Vektor::Vektor(int x, int y, int z)
  170. {
  171.     i = x;
  172.     j = y;
  173.     k = z;
  174. }
  175.  
  176. int min(int polje[])
  177. {
  178.     int min = polje[0];
  179.     int ind = 0;
  180.     for (int i = 0; i < 10; i++)
  181.     {
  182.         if (polje[i]<min)
  183.         {
  184.             ind = i;
  185.             min = polje[i];
  186.         }
  187.     }
  188.     return ind + 1;
  189. }
  190.  
  191.  
  192. int min(string polje[])
  193. {
  194.     string min = polje[0];
  195.     int ind = 0;
  196.     for (int i = 0; i < 10; i++)
  197.     {
  198.         if (polje[i]<min)
  199.         {
  200.             ind = i;
  201.             min = polje[i];
  202.         }
  203.     }
  204.     return ind + 1;
  205. }
  206.  
  207. int min(double polje[])
  208. {
  209.     double min = polje[0];
  210.     int ind = 0;
  211.     for (int i = 0; i < 10; i++)
  212.     {
  213.         if (polje[i]<min)
  214.         {
  215.             ind = i;
  216.             min = polje[i];
  217.         }
  218.     }
  219.     return ind + 1;
  220. }
  221.  
  222. int min(Vektor polje[])
  223. {
  224.     return 0;
  225. }
  226.  
  227. int main()
  228. {
  229.     int ipolje[5]{5, 2, 1, 4, 3};
  230.     double dpolje[5] {1.1, 23, 34, 0.214, 7};
  231.     string spolje[5] {a, b, 1, c, z};
  232.     Vektor vpolje[3] {};
  233.     cout << "int:" << min(ipolje) << endl;
  234.     cout << "double:" << min(dpolje) << endl;
  235.     cout << "char" << min(spolje) << endl;
  236.     cout << "vektor:" << min(vpolje) << endl;
  237.  
  238.     return 0;
  239. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top