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 pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări suplimentare sau nevoie de ajutor, vă rugăm să ne contactați cu încredere. Așteptăm cu drag să reveniți și nu uitați să ne salvați în lista dumneavoastră de favorite!