Informatică, întrebare adresată de anaanita2000, 9 ani în urmă

Scrieţi definiţia completă a subprogramului f care primeşte prin intermediul parametrului n un număr natural nenul (2≤n≤9), iar prin intermediul parametrului a, un tablou unidimensional care conţine n valori naturale distincte, fiecare dintre acestea având cel mult patru cifre. Subprogramul interschimbă cel mai mic element par şi cel mai mare element impar din tabloul a şi furnizează tabloul modificat tot prin parametrul a. Dacă tabloul nu conţine niciun element par sau niciun element impar, el va rămâne neschimbat. Exemplu: dacă subprogramul se apelează pentru n=6 şi pentru a având valorile
(2,3,17,6,1,24), tabloul va avea în urma apelului următoarea formă: (17,3,2,6,1,24).

Răspunsuri la întrebare

Răspuns de artur99
4
void f(int n, int a[]){
    int i, minp=-1, maxp=-1;
    for(i=0;i<n;i++){
        if(a[i]%2==0 && (minp == -1 || a[i] < a[minp])) minp = i;
        if(a[i]%2==1 && (maxp == -1 || a[i] > a[maxp])) maxp = i;
    }
    i=a[minp];
    a[minp] = a[maxp];
    a[maxp] = i;
}
Alte întrebări interesante