Răspuns :
Răspuns:
#include <fstream>
#include <algorithm>
#include <iostream>
using namespace std;
int v[1000000];
int main(){
int x, p = 0;
ifstream fin("bac.txt");
while(fin >> x){
v[p++] = x;
}
fin.close();
sort(v, v+p, [](int a, int b) -> bool {return (a%2) == (b%2) ? a < b : (a%2) > (b%2); });
for(int i = 0; i < p; i++)
cout << v[i] << ' ';
}
Explicație:
Se citesc toate numerele, se memoreaza intr-un vector, si se sorteaza astfel:
Daca 2 numere au aceasi paritate, atunci cel mai mic dintre ele este asezat inaintea celui mai mare.
Daca 2 numere au paritate diferita, atunci cel impar este asezat inaintea celui par.
Si apoi se afiseaza vectorul rezultat.
Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.