MeehoweCK

Untitled

Mar 12th, 2023
816
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.87 KB | None | 0 0
  1. #include <iostream>
  2. #include <conio.h>
  3.  
  4. using namespace std;
  5.  
  6. void wyswietl_ciag(char* ciag)
  7. {
  8.     if(ciag == nullptr)
  9.         return;
  10.     unsigned i = 0;
  11.     do
  12.     {
  13.         cout << ciag[i];
  14.         ++i;
  15.     }
  16.     while(ciag[i] != '\0');
  17. }
  18.  
  19. unsigned dlugosc_wyrazu(char* ciag)
  20. {
  21.     if(ciag == nullptr)
  22.         return 0;
  23.     unsigned i = 0;
  24.     while(ciag[i] != '\0')
  25.         ++i;
  26.     return i;
  27. }
  28.  
  29. char* wczytaj_tekst()
  30. {
  31.     char znak = _getch();
  32.     char* tekst = nullptr;
  33.     if(static_cast<int>(znak) != 13)
  34.     {
  35.         cout << znak;
  36.         tekst = new char[1];
  37.         tekst[0] = znak;
  38.     }
  39.     else
  40.         return nullptr;
  41.  
  42.     unsigned licznik = 1;
  43.     znak = _getch();
  44.     while(static_cast<int>(znak) != 13)
  45.     {
  46.         cout << znak;
  47.         char* temp = new char[licznik + 1];
  48.         for(unsigned i = 0; i < licznik; ++i)
  49.             temp[i] = tekst[i];
  50.  
  51.         delete[] tekst;
  52.         tekst = new char[licznik + 1];
  53.         for(unsigned i = 0; i < licznik; ++i)
  54.             tekst[i] = temp[i];
  55.  
  56.         delete[] temp;
  57.         tekst[licznik] = znak;
  58.         ++licznik;
  59.  
  60.         znak = _getch();
  61.     }
  62.  
  63.     char* temp = new char[licznik + 1];
  64.     for(unsigned i = 0; i < licznik; ++i)
  65.         temp[i] = tekst[i];
  66.  
  67.     delete[] tekst;
  68.     tekst = new char[licznik + 1];
  69.     for(unsigned i = 0; i < licznik; ++i)
  70.         tekst[i] = temp[i];
  71.  
  72.     delete[] temp;
  73.     tekst[licznik] = '\0';
  74.     cout << '\n';
  75.  
  76.     return tekst;
  77. }
  78.  
  79. int main()
  80. {
  81.     cout << "Napisz cos i zatwierdz klawiszem enter: ";
  82.     char* napis = wczytaj_tekst();
  83.     char ciag[5] = {'A', 'n', 'i', 'a', '\0'};
  84.     wyswietl_ciag(ciag);
  85.     cout << endl;
  86.     wyswietl_ciag(napis);
  87.     cout << endl << dlugosc_wyrazu(ciag) << endl;
  88.     cout << dlugosc_wyrazu(napis) << endl;
  89.     if(napis != nullptr)
  90.         delete[] napis;
  91.     return 0;
  92. }
Advertisement
Add Comment
Please, Sign In to add comment