Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.60 KB | None | 0 0
  1. #include "stdafx.h"
  2. #include <iostream>
  3. #include <string>
  4. #include <conio.h>
  5. #include <fstream>
  6.  
  7. using namespace std;
  8.  
  9.  
  10. struct klasa
  11. {
  12. string imie;
  13. string nazwisko;
  14. int wzrost;
  15. int waga;
  16. };
  17.  
  18. void SortowanieWzrostRos(klasa tab[], int rozmiar)
  19. {
  20. for (int i = 0; i < rozmiar; i++)
  21. {
  22. for (int j = 0; j < rozmiar - 1; j++)
  23. {
  24. if (tab[j].wzrost > tab[j + 1].wzrost)
  25. {
  26. swap(tab[j].wzrost, tab[j + 1].wzrost);
  27. swap(tab[j].imie, tab[j + 1].imie);
  28. swap(tab[j].nazwisko, tab[j + 1].nazwisko);
  29. swap(tab[j].waga, tab[j + 1].waga);
  30. }
  31.  
  32. }
  33. }
  34. }
  35.  
  36. void SortowanieWzrostMal(klasa tab[], int rozmiar)
  37. {
  38. for (int i = 0; i < rozmiar; i++)
  39. {
  40. for (int j = 0; j < rozmiar - 1; j++)
  41. {
  42. if (tab[j].wzrost < tab[j + 1].wzrost)
  43. {
  44. swap(tab[j + 1].wzrost, tab[j].wzrost);
  45. swap(tab[j + 1].imie, tab[j].imie);
  46. swap(tab[j + 1].nazwisko, tab[j].nazwisko);
  47. swap(tab[j + 1].waga, tab[j].waga);
  48. }
  49.  
  50. }
  51. }
  52. }
  53. void SortowanieWagaRos(klasa tab[], int rozmiar)
  54. {
  55. for (int i = 0; i < rozmiar; i++)
  56. {
  57. for (int j = 0; j < rozmiar - 1; j++)
  58. {
  59. if (tab[j].waga > tab[j + 1].waga)
  60. {
  61. swap(tab[j].wzrost, tab[j + 1].wzrost);
  62. swap(tab[j].imie, tab[j + 1].imie);
  63. swap(tab[j].nazwisko, tab[j + 1].nazwisko);
  64. swap(tab[j].waga, tab[j + 1].waga);
  65. }
  66.  
  67. }
  68. }
  69. }
  70. void SortowanieWagaMal(klasa tab[], int rozmiar)
  71. {
  72. for (int i = 0; i < rozmiar; i++)
  73. {
  74. for (int j = 0; j < rozmiar - 1; j++)
  75. {
  76. if (tab[j].waga < tab[j + 1].waga)
  77. {
  78. swap(tab[j + 1].wzrost, tab[j].wzrost);
  79. swap(tab[j + 1].imie, tab[j].imie);
  80. swap(tab[j + 1].nazwisko, tab[j].nazwisko);
  81. swap(tab[j + 1].waga, tab[j].waga);
  82. }
  83.  
  84. }
  85. }
  86. }
  87.  
  88.  
  89. int main()
  90. {
  91. int rozmiar = 3;
  92. klasa *klasaa;
  93. klasaa = new klasa[rozmiar];
  94.  
  95.  
  96. for (int i = 0; i < rozmiar; i++)
  97. {
  98. cout << "Dane " << i + 1 << " ucznia" << endl;
  99. cout << "Podaj imie ucznia: ";
  100. cin >> klasaa[i].imie;
  101. cout << "Podaj nazwisko ucznia: ";
  102. cin >> klasaa[i].nazwisko;
  103. cout << "Podaj wzrost ucznia: ";
  104. cin >> klasaa[i].wzrost;
  105. cout << "Podaj wage ucznia: ";
  106. cin >> klasaa[i].waga;
  107. cout << endl;
  108. }
  109.  
  110. int p;
  111. cout << "Wpisz 1 aby posortowalo po wzroscie" << endl;
  112. cout << "lub 2 by posortowalo po wadze i zaakceptuj enterem: ";
  113. cin >> p;
  114. cout << endl;
  115. if (p == 1)
  116. {
  117. int q;
  118. cout << "Wpisz 3 aby posortowalo rosnaco" << endl;
  119. cout << "lub 4 by posortowalo malejaco: ";
  120. cin >> q;
  121. if (q == 3)
  122. {
  123. SortowanieWzrostRos(klasaa, rozmiar);
  124. }
  125. else if (q == 4)
  126. {
  127. SortowanieWzrostMal(klasaa, rozmiar);
  128. }
  129.  
  130. }
  131. else if (p == 2)
  132. {
  133. int q;
  134. cout << "Wpisz 3 aby posortowalo rosnaco" << endl;
  135. cout << "lub 4 by posortowalo malejaco: ";
  136. cin >> q;
  137. if (q == 3)
  138. {
  139. SortowanieWagaRos(klasaa, rozmiar);
  140. }
  141. else if (q == 4)
  142. {
  143. SortowanieWagaMal(klasaa, rozmiar);
  144. }
  145. }
  146. cout << endl;
  147. fstream tekst;
  148. tekst.open("klasa.txt", ios::out);
  149. if (!tekst.is_open())return 1;
  150.  
  151. for (int i = 0; i < rozmiar; i++)
  152. {
  153. cout << "Dane " << i + 1 << " ucznia" << endl;
  154. cout << "Imie ucznia: ";
  155. cout << klasaa[i].imie << endl;
  156. cout << "Nazwisko ucznia: ";
  157. cout << klasaa[i].nazwisko << endl;
  158. cout << "Wzrost ucznia: ";
  159. cout << klasaa[i].wzrost << endl;
  160. cout << "Waga ucznia: ";
  161. cout << klasaa[i].waga << endl;
  162. cout << endl;
  163. }
  164.  
  165. for (int i = 0; i < rozmiar; i++)
  166. {
  167. tekst << klasaa[i].imie << endl;
  168. tekst << klasaa[i].nazwisko << endl;
  169. tekst << klasaa[i].wzrost << endl;
  170. tekst << klasaa[i].waga << endl;
  171. tekst << endl;
  172. }
  173. delete[] klasaa;
  174. tekst.close();
  175. _getch();
  176. return 0;
  177. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement