Detalii evaluare #36700575

Rezumat problemă

Un număr se numește triprim dacă este produsul a trei numere prime distincte. Exemple de numere triprime: 30 = 2 × 3 × 5, 42 = 2 × 3 × 7, 231 = 3 × 7 × 11. Date fiind numerele A și B, să se afișeze numărul de numere triprime din intervalul [A, B] (inclusiv A și B).

Detalii

Problema triprime Operații I/O triprime.in/triprime.out
Limita timp 0.5 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #36700575 Utilizator Bogdan Vlad-Mihai (bogdanvladmihai)
Fișier triprime.c Dimensiune 9.86 KB
Data încărcării 17 Mai 2022, 16:31 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

triprime.c:4:1: error: unknown type name 'using'
 using namespace std;

 ^
triprime.c:4:17: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'std'
 using namespace std;

                 ^
triprime.c:6:1: error: unknown type name 'bool'
 bool isPrime(const int &n) {if(n % 2 == 0 && n != 2) return false;for (int i = 3; i * i <= n; i += 2) {if (n % i == 0) {return false;}}return true;}

 ^
triprime.c:6:24: error: expected ';', ',' or ')' before '&' token
 bool isPrime(const int &n) {if(n % 2 == 0 && n != 2) return false;for (int i = 3; i * i <= n; i += 2) {if (n % i == 0) {return false;}}return true;}

                        ^
triprime.c: In function 'init':
triprime.c:8:14: error: 'for' loop initial declarations are only allowed in C99 mode
 void init() {for (int i = 2; i <= 14000; i++) {if (isPrime(i)) {v[L++]=i;}}}

              ^
triprime.c:8:14: note: use option -std=c99 or -std=gnu99 to compile your code
triprime.c:8:1: warning: implicit declaration of function 'isPrime' [-Wimplicit-function-declaration]
 void init() {for (int i = 2; i <= 14000; i++) {if (isPrime(i)) {v[L++]=i;}}}

 ^
triprime.c: At top level:
triprime.c:9:1: error: unknown type name 'bool'
 bool isTriPrime(int n) {int cnt = 0;for (int i = 0; i < L && v[i] * v[i] <= n && cnt <= 2; i++) {if (n % v[i] == 0) {n /= v[i];if (n % v[i] == 0) {return false;}cnt++;}}if (n > 1 && cnt == 2 && isPrime(n)) {cnt++;n = 1;}return (cnt == 3 && n == 1);}

 ^
triprime.c: In function 'isTriPrime':
triprime.c:9:37: error: 'for' loop initial declarations are only allowed in C99 mode
 bool isTriPrime(int n) {int cnt = 0;for (int i = 0; i < L && v[i] * v[i] <= n && cnt <= 2; i++) {if (n % v[i] == 0) {n /= v[i];if (n % v[i] == 0) {return false;}cnt++;}}if (n > 1 && cnt == 2 && isPrime(n)) {cnt++;n = 1;}return (cnt == 3 && n == 1);}

                                     ^
triprime.c:9:155: error: 'false' undeclared (first use in this function)
 bool isTriPrime(int n) {int cnt = 0;for (int i = 0; i < L && v[i] * v[i] <= n && cnt <= 2; i++) {if (n % v[i] == 0) {n /= v[i];if (n % v[i] == 0) {return false;}cnt++;}}if (n > 1 && cnt == 2 && isPrime(n)) {cnt++;n = 1;}return (cnt == 3 && n == 1);}

                                                                                                                                                           ^
triprime.c:9:155: note: each undeclared identifier is reported only once for each function it appears in

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 triprime 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ă.