Advertisement
imarosi

nyaj-1

Nov 6th, 2019
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.32 KB | None | 0 0
  1. string* terel(const string* nyaj, unsigned& nyajhossz) const
  2. {
  3.     if (nyaj == NULL || nyajhossz == 0) {
  4.         nyajhossz = 0;
  5.         return nullptr;
  6.     }
  7.  
  8.     unsigned kapacitas = this->terelo_kapacitas;
  9.     string *array = new string[nyajhossz];
  10.  
  11.     int hova;               // hova kell rakni a következő terelt birkát az array-ba
  12.     int mit = 0;            // hol van most az a birka a nyaj-ban
  13.     for (hova = 0; hova <= kapacitas; hova++) {         // csak az első "kapacitás" darab birkát tereljük
  14.         while (mit < nyajhossz && nyaj[mit] == "") {    // az üres heleyekt lépjük át mit-tel
  15.             if (kapacitas >= 0)     // hmm, ezt nem tudom, kell-e nézni? Szerintem nem...
  16.                 mit++;
  17.         }
  18.         if (mit == nyajhossz)
  19.             break;                                      // nem volt már újabb birka
  20.  
  21.         array[hova] = nyaj[mit];                        // terelünk, előre kerül a birka
  22.         kapacitas--;                // ezt miért csökkented?
  23.         mit++;
  24.     }
  25.  
  26.     for (int i = hova; i < nyajhossz; i++) {    // Ennek a teljes ciklusnak nincs sok értelme, eleve "" minden, amibe nem írtál semmit
  27.         if (kapacitas >= 0) {   // ennek a szerepét sem értem
  28.             array[i] = "";
  29.             kapacitas--;  
  30.         }
  31.     }
  32.     // A kapacitas-on felüli birkákat itt a végén nem tetted át az array-ba! Azért nem kaptál max pontot
  33.  
  34.     nyajhossz = hova;
  35.     return array;
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement