SaveText.Ru

Без имени
  1. //project
  2.  
  3. #include "Header.h"
  4.  
  5.  
  6.  
  7. int main()
  8. {
  9.     setlocale(LC_ALL, "RUS");
  10.     vector <Sportsman> V;
  11.     GetNames(V);
  12.     Sort(V);
  13.     Print(V);
  14.     return 0;
  15. }
  16.  
  17. //functions
  18.  
  19. #include "Header.h"
  20.  
  21.  
  22.  
  23. void GetNames(vector <Sportsman>& V) {
  24.     V.resize(6);
  25.     V[0] = { "A", 3 };
  26.     V[1] = { "B", 1 };
  27.     V[2] = { "C", 8 };
  28.     V[3] = { "D", 4 };
  29.     V[4] = { "F", 9 };
  30.     V[5] = { "G", 2 };
  31. }
  32.  
  33. void Sort(vector <Sportsman>& V) {
  34.     Sportsman temp;
  35.     for (int step = 3; step > 0; step--) {
  36.         for (int i = step; i < (V.size() - step); i++) {
  37.             for (int j = i; j >= 0; j--) {
  38.                 if (V[j].time > V[j + step].time)
  39.                 {
  40.                     temp = V[j];
  41.                     V[j] = V[j + step];
  42.                     V[j + step] = temp;
  43.                 }
  44.             }
  45.         }
  46.     }
  47.     for (int i = 0; i < V.size() - 1; i++)
  48.         if (V[i].time > V[i + 1].time) {
  49.             temp = V[i];
  50.             V[i] = V[i + 1];
  51.             V[i + 1] = temp;
  52.         }
  53. }
  54.  
  55.     void Print(vector <Sportsman> & V) {
  56.         for (int i = 0; i < V.size(); i++) {
  57.             cout << V[i].name << " " << V[i].time << endl;
  58.         }
  59.         cout << "-------" << endl;
  60.     };
  61.  
  62. //header
  63.  
  64. #pragma once
  65. #include <iostream>
  66. #include <cmath>
  67. #include <vector>
  68. #include <string>
  69. using namespace std;
  70. struct Sportsman
  71. {
  72.     string name;
  73.     int time;
  74. };
  75.  
  76. void GetNames(vector <Sportsman>& V);
  77. void Sort(vector <Sportsman>& V);
  78. void Print(vector <Sportsman>& V);
  79.  

Share with your friends:

Print