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

Subprogramul f 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 schmollstefan
4
void f(int n,int a[])
{
int i,min=1000,max=-1,p,p1,aux;
for(i=1;i<=n;i++)
  if(a[i]%2==0)
   {
     if(a[i]<min)
        min=a[i];
        p=i;
    }
  else
    {
       if(a[i]>max)
        max=a[i];
        p1=i;
    }
if(max!=-1&&min!=1000)
{
   aux=a[p];
   a[p]=a[p1];
   a[p1]=aux;
}
  
   
}
Alte întrebări interesante