Advertisement
Guest User

Untitled

a guest
Dec 6th, 2016
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.63 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. std::string odwracanie(std::string in);
  4. std::string kompresja(std::string wejscie);
  5. int main()
  6. {
  7.     std::cout << "Zadanie 1: podaj napis do odwrocenia: \n";
  8.     std::string wyraz;
  9.     std::cin >> wyraz;
  10.     std::cout << "\n" << odwracanie(wyraz) << "\n";
  11.  
  12.     std::cout << "Zadanie 2: Podaj ciag znakow to przetworzenia \n";
  13.     std::string wyraz2;
  14.     std::cin >> wyraz2;
  15.     std::cout << "\n" << kompresja(wyraz2);
  16.  
  17.     system("PAUSE");
  18.     return 0;
  19. }
  20.  
  21.  
  22.  
  23. std::string odwracanie(std::string in) {
  24.     std::string wynik;
  25.     for (int i = in.size() - 1; i >= 0; i--)
  26.     {
  27.         wynik += in[i];
  28.     }
  29.     return wynik;
  30. }
  31. std::string kompresja(std::string wejscie) {
  32.     std::string wynik;
  33.     char ilosc_znakow = 49;
  34.     for (int i = 0; i < wejscie.size(); i++)
  35.     {
  36.         if (wejscie[i] == wejscie[i+1])
  37.         {
  38.             ilosc_znakow += 1;
  39.         }
  40.         else {
  41.             wynik = wynik + wejscie[i];
  42.             wynik += ilosc_znakow;
  43.             ilosc_znakow = 49;
  44.         }
  45.     }
  46.     return wynik;
  47. }
  48.  
  49. /*
  50.  * 5 min przed końcem zajęć plik zadania.cpp wysyłamy na maila:
  51.  * dgrabowski.amw@gmail.com
  52.  * Tytułem: [165NCI_BX][labX] Imię Nazwisko NrIndeksu
  53.  */
  54.  
  55. #include "zadania.h"
  56. #include <iostream>
  57. #include <algorithm>
  58. #include <string>
  59.  
  60. std::string imieINazwisko()
  61. {
  62.     return "Michał Okulski";
  63. }
  64.  
  65. std::string numerGrupy()
  66. {
  67.     return "165NCI_B1";
  68. }
  69.  
  70. //TODO: napisać fragment kodu który dla podanego ciągu wejściowego więszego od 1
  71. // zwróci ten sam ciąg zapisany wspak
  72. // przyklad:
  73. // ogien ---> neigo
  74. std::string odwracanie(std::string in)
  75. {
  76.     std::string wynik;
  77.     // Twój kod
  78.     for(int iter = in.length() -1 ; iter >= 0; --iter)
  79.     {
  80.         wynik += in.at(iter);
  81.     }
  82.     // Koniec Twojego kodu
  83.     return wynik;
  84. }
  85.  
  86.  
  87. //TODO: napisać fragment kodu który dla podanego łańcucha wejściowego
  88. // do zmiennej wynikowej przypisze ciag skompresowany taki że każdy ciąg
  89. // skladający się z tego samego znaku zamieni na ciąg 2-znakowy z opisem ilości
  90. // występowania tego znaku
  91. //
  92. // przykład
  93. // aaaakkbwwwwww    --->    a4k2b1w6
  94. // uwaga - ilość znaków w jednym ciągu nie przekroczy 9
  95. std::string kompresja(std::string wejscie) {
  96.     std::string wynik;
  97.     // Twój kod
  98.     /*
  99.     for (i=0;i<=9;i++)
  100.     {
  101.         count(a,w,a);
  102.         count(a,w,b);
  103.         count(a,w,w);
  104.     }*/
  105.     // Koniec Twojego kodu
  106.     return wynik;
  107. }
  108.  
  109. //TODO: przeprowadzić inwentaryzację (spis) ekwipunku kompanii
  110. // sumaryczne wyniki zapisać do strutury StanEkwipunku
  111. StanEkwipunku inwentaryzacjaKompanii(Zolnierz kompania[LICZEBNOSC_KOMPANII]) {
  112.     StanEkwipunku wynik;
  113.     // Twój kod
  114.     /*int granaty;
  115.     int amunicja;
  116.     int prowiant;
  117.    
  118.     switch (Zolnierz.nazwisko)
  119.         case 1
  120.         {
  121.         Zolnierz.wyposazenie.ekwipunek.ILOSC_GRANATOW = granaty;
  122.         Zolnierz.wyposazenie.ekwipunek.ILOSC_AMUNICJI = amunicja;
  123.         Zolnierz.wyposazenie.ekwipunek.ILOSC_PROWIANTU = prowiant;
  124.        
  125.         }
  126.         case 2
  127.         {
  128.         Zolnierz.wyposazenie.ekwipunek.ILOSC_GRANATOW = granaty;
  129.         Zolnierz.wyposazenie.ekwipunek.ILOSC_AMUNICJI = amunicja;
  130.         Zolnierz.wyposazenie.ekwipunek.ILOSC_PROWIANTU = prowiant;
  131.         }
  132.         case 3
  133.         {
  134.         Zolnierz.wyposazenie.ekwipunek.ILOSC_GRANATOW = granaty;
  135.         Zolnierz.wyposazenie.ekwipunek.ILOSC_AMUNICJI = amunicja;
  136.         Zolnierz.wyposazenie.ekwipunek.ILOSC_PROWIANTU = prowiant;
  137.         }
  138.         case 4
  139.         {
  140.         Zolnierz.wyposazenie.ekwipunek.ILOSC_GRANATOW = granaty;
  141.         Zolnierz.wyposazenie.ekwipunek.ILOSC_AMUNICJI = amunicja;
  142.         Zolnierz.wyposazenie.ekwipunek.ILOSC_PROWIANTU = prowiant;
  143.         }
  144.         case 5
  145.         {
  146.         Zolnierz.wyposazenie.ekwipunek.ILOSC_GRANATOW = granaty;
  147.         Zolnierz.wyposazenie.ekwipunek.ILOSC_AMUNICJI = amunicja;
  148.         Zolnierz.wyposazenie.ekwipunek.ILOSC_PROWIANTU = prowiant;
  149.         }
  150.        
  151.         */
  152.     // Koniec Twojego kodu
  153.     return wynik;
  154. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement