Advertisement
Guest User

Untitled

a guest
May 23rd, 2017
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.21 KB | None | 0 0
  1. // yapocetopravny.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include <iostream>
  6. #include <string>
  7. #include <vector>
  8.  
  9. using namespace std;
  10.  
  11. struct Dom
  12. {
  13. string ulica;
  14. int cislo;
  15. double plocha;
  16. };
  17.  
  18. void nacitaj(Dom * dom)
  19. {
  20. int i = 0;
  21.  
  22. cout << "Zadajte ulicu domu: ";
  23. cin.sync();
  24. getline(cin,dom[i].ulica);
  25.  
  26. cout << "Zadaj cislo domu: ";
  27. cin >> dom[i].cislo;
  28.  
  29. cout << "Zadaj plochu domu v m^2: ";
  30. cin >> dom[i].plocha;
  31.  
  32. cout << endl;
  33. }
  34.  
  35. void vypis(Dom * dom)
  36. {
  37. int i = 0;
  38.  
  39. cout << "Ulica domu je: " << dom[i].ulica;
  40. cout << "\nCislo domu je: " << dom[i].cislo;
  41. cout << "\nPlocha domu je: " << dom[i].plocha << "m^2" << endl;
  42.  
  43. }
  44.  
  45. void nacitajB(vector<Dom>&zoznam)
  46. {
  47. Dom dom;
  48. int N;
  49. cout << "\nZadaj pocet udajov (N): ";
  50. cin >> N;
  51.  
  52. for(int i = 0; i < N; i++)
  53. {
  54. cout << "Zadaj ulicu " << i+1 << ". domu: ";
  55. cin.sync();
  56. getline(cin,dom.ulica);
  57.  
  58. cout << "Zadaj cislo " << i+1 << ". domu: ";
  59. cin >> dom.cislo;
  60.  
  61. cout << "Zadaj plochu " << i+1<< ". domu: ";
  62. cin >> dom.plocha;
  63.  
  64. zoznam.push_back(dom);
  65. }
  66. }
  67.  
  68. void vypisB(vector<Dom>&zoznam)
  69. {
  70. for(int i = 0; i < zoznam.size(); i++)
  71. {
  72. cout << endl;
  73. cout << "Dom c. "<<i+1<< ". ma udaje: " << "Ulica: " << zoznam[i].ulica;
  74. cout <<", Cislo: "<< zoznam[i].cislo;
  75. cout <<", Plocha: " << zoznam[i].plocha << "m^2" ;
  76. }
  77. cout << endl;
  78. }
  79.  
  80. void zoradSelect(vector<Dom>&zoznam)
  81. {
  82. Dom dom;
  83. int imin;
  84.  
  85. for (int I=0; I<=zoznam.size()-2; I++)
  86. {
  87. imin = I;
  88. for (int J=I+1; J<=zoznam.size()-1; J++)
  89. {
  90. if (zoznam[J].plocha < zoznam[imin].plocha)
  91. imin = J;
  92. }
  93. dom = zoznam[I];
  94. zoznam[I] = zoznam[imin];
  95. zoznam[imin] = dom;
  96. }
  97. }
  98.  
  99. int _tmain(int argc, _TCHAR* argv[])
  100. {
  101. vector<Dom> zoznam;
  102.  
  103. Dom * dom = NULL;
  104. dom = new Dom[1];
  105.  
  106. cout << "Zadanie po A, jedna struktura" << endl;
  107. nacitaj(dom);
  108. vypis(dom);
  109.  
  110. delete[]dom;
  111.  
  112.  
  113. cout << "Zadanie po B, zoznam struktur" << endl;
  114. nacitajB(zoznam);
  115. cout << "Nezotriedeny zoznam: " << endl;
  116. vypisB(zoznam);
  117.  
  118. zoradSelect(zoznam);
  119. cout << "\nZotriedeny zoznam podla PLOCHY: ";
  120. vypisB(zoznam);
  121.  
  122. zoznam.clear();
  123.  
  124.  
  125. system("Pause");
  126. return 0;
  127. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement