👤

Fișierul bac.txt conține, în ordine crescătoare, cel mult 106 numere naturale din intervalul [0,109],
separate prin câte un spațiu. Se cere să se afișeze pe ecran, în ordine strict crescătoare, separate prin
câte un spațiu, numerele pare distincte care apar în fișier. Dacă nu există niciun astfel de număr, se
afișează pe ecran mesajul nu exista. Proiectați un algoritm eficient din punctul de vedere al memoriei
utilizate și al timpului de executare.
Exemplu: dacă fișierul conține numerele 5 5 6 7 8 8 8 8 10 15 16 16 25 25 49
pe ecran se afișează, în această ordine, numerele 6 8 10 16


Răspuns :

Răspuns:

#include <iostream>

#include<fstream>

using namespace std;

ifstream f("bac.txt");

int x,fr[1000000],ok = 0;

int main() {

   while (f >> x) {

       if (x % 2 == 0 && fr[x] < 1) {

           ok = 1;

           ++fr[x];

           cout << x << " ";

       }

   }

   if (ok == 0)

       cout << "Nu exista";

   return 0;

}

Explicație:

Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, nu ezitați să ne contactați. Ne bucurăm să vă revedem și vă invităm să ne adăugați în lista de favorite!


Ze Schools: Alte intrebari