procedura charge in linguaggio c

Serginho153

Nuovo Utente
95
0
Dato un intero x e un array a sia d(x, a) il valore minimo delle dierenze in valore assoluto tra x e ciascun elemento
di a. Ad esempio, dato l'array a rappresentato nella seguente tabella
20 4 25 11 5
d(9, a)=2.
Si denisca in C una procedura
void change (int a[], int b[], int dima, int dimb)
che rimpiazza ogni elemento x dell'array a (di dimensione dima) con il valore d(x, b), dove b e un array di dimensione
dimb.


Codice:
{ int x, i, j, p, d;
if (x>b[0]) d= x-b[0];
else d= b[0]-x;
for(j=1; j<dimb; j++)
  {if (x>b[j]) p=x-b[j];
    else p=b[j]-x;
    if(p<d) d=p;
  }
for(i=0;i<dima; i ++)
  if (a[i]==x) a[i]=d;
io ho fatto così...qualcuno può aiutarmi? è scritta in modo corretto?
 

Serginho153

Nuovo Utente
95
0
già...potresti dirmi come richiamarla in un nuovo programma? cioè salvo la procedura in formato h per esempio? oppure la scrivo fuori dal main e poi la richiamo nel main?
 

matteoc91

Utente Attivo
158
17
già...potresti dirmi come richiamarla in un nuovo programma? cioè salvo la procedura in formato h per esempio? oppure la scrivo fuori dal main e poi la richiamo nel main?
Basta che scrivi la funzione fuori dal main e poi la richiami :)
Volendo puoi farla anche esterna e poi collegare i file tramite un .h, ma in questo caso semplice puoi tranquillamente mettere tutto in un unico file ;)
 
  • Mi piace
Reazioni: Serginho153

Ci sono discussioni simili a riguardo, dai un'occhiata!

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili