Detalii evaluare #28498867

Rezumat problemă

Se citeste un număr natural l și un șir de cel mult 10000 de caractere ce conține cuvinte despărțite între ele prin cate un spațiu. Fiecare cuvânt din șirul de caractere citit este format din cel mult l litere mari ale alfabetului englez. Să se scrie un program care afișează aceste cuvinte, în ordinea în care se citesc, pe linii de cel mult l caractere, astfel încât orice linie începe și se termină cu un cuvânt și oricare două cuvinte de pe aceeași linie sunt separate printr-un singur spațiu. Oricare linie este folosită la maxim, adică dacă un cuvânt are loc pe acea linie va fi pus acolo și nu va fi trecut pe linia următoare sau spart pe 2 linii.

Detalii

Problema LungimeRandMax Operații I/O lungimerandmax.in/lungimerandmax.out
Limita timp 0.1 secunde Limita memorie Total: 64 MB / Stivă 64 MB
Id soluție #28498867 Utilizator Popescu Iulia Cleopatra (Popescu_Iulia_Cleopatra)
Fișier lungimerandmax.cpp Dimensiune 949 B
Data încărcării 08 Martie 2021, 15:27 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

lungimerandmax.cpp:9:26: error: 'char rand [22]' redeclared as different kind of symbol
 char a[1001], *p, rand[22];

                          ^
In file included from /usr/include/c++/4.8/cstdlib:72:0,
                 from /usr/include/c++/4.8/ext/string_conversions.h:41,
                 from /usr/include/c++/4.8/bits/basic_string.h:2815,
                 from /usr/include/c++/4.8/string:52,
                 from /usr/include/c++/4.8/bits/locale_classes.h:40,
                 from /usr/include/c++/4.8/bits/ios_base.h:41,
                 from /usr/include/c++/4.8/ios:42,
                 from /usr/include/c++/4.8/istream:38,
                 from /usr/include/c++/4.8/fstream:38,
                 from lungimerandmax.cpp:1:
/usr/include/stdlib.h:374:12: error: previous declaration of 'int rand()'
 extern int rand (void) __THROW;
            ^
lungimerandmax.cpp: In function 'int main()':
lungimerandmax.cpp:21:19: error: cannot convert 'int (*)()throw ()' to 'char*' for argument '1' to 'char* strcat(char*, const char*)'
     strcat(rand, p);

                   ^
lungimerandmax.cpp:29:29: error: cannot convert 'int (*)()throw ()' to 'char*' for argument '1' to 'char* strcat(char*, const char*)'
             strcat(rand, " "),strcat(rand, p);

                             ^
lungimerandmax.cpp:29:45: error: cannot convert 'int (*)()throw ()' to 'char*' for argument '1' to 'char* strcat(char*, const char*)'
             strcat(rand, " "),strcat(rand, p);

                                             ^
lungimerandmax.cpp:33:18: warning: the address of 'int rand()' will always evaluate as 'true' [-Waddress]
             g << rand << '\n';

                  ^
lungimerandmax.cpp:34:36: error: ISO C++ forbids applying 'sizeof' to an expression of function type [-fpermissive]
             memset(rand, 0, sizeof rand);

                                    ^
lungimerandmax.cpp:34:40: error: invalid conversion from 'int (*)()throw ()' to 'void*' [-fpermissive]
             memset(rand, 0, sizeof rand);

                                        ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/os_defines.h:39,
                 from /usr/include/i386-linux-gnu/c++/4.8/bits/c++config.h:426,
                 from /usr/include/c++/4.8/iosfwd:38,
                 from /usr/include/c++/4.8/ios:38,
                 from /usr/include/c++/4.8/istream:38,
                 from /usr/include/c++/4.8/fstream:38,
                 from lungimerandmax.cpp:1:
/usr/include/i386-linux-gnu/bits/string3.h:76:1: error:   initializing argument 1 of 'void* memset(void*, int, size_t)' [-fpermissive]
 __NTH (memset (void *__dest, int __ch, size_t __len))
 ^
lungimerandmax.cpp:37:27: error: cannot convert 'int (*)()throw ()' to 'char*' for argument '1' to 'char* strcat(char*, const char*)'
             strcat(rand, p);

                           ^
lungimerandmax.cpp:41:27: warning: the address of 'int rand()' will always evaluate as 'true' [-Waddress]
     if(lcurent <= l) g << rand;

                           ^

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema LungimeRandMax face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.