[C]radice quadrata
Qualcuno riesce a spiegarmi perchè il seguente sorgente non mi calcola la radice quadrata?
L'errore restituito dal terminale è:
/tmp/ccz1D6fm.o: In function `main':
es8.c:(.text+0x4c): undefined reference to `sqrt'
collect2: ld returned 1 exit status
come se non ci fosse la libreria math.h...
L'errore restituito dal terminale è:
/tmp/ccz1D6fm.o: In function `main':
es8.c:(.text+0x4c): undefined reference to `sqrt'
collect2: ld returned 1 exit status
come se non ci fosse la libreria math.h...
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(void)
{
float N;
int sum=0;
float radice;
do {
printf("Inserire valore intero N:\n");
scanf("%f",&N);
radice=sqrt(N);
sum=radice+sum;
} while(N>0);
printf("La somma vale %d\n",sum);
}
Risposte
Come hai compilato il codice?
cosi:
"gcc es9.c -o es9"
e poi lo "lancio" con: ./es9
"gcc es9.c -o es9"
e poi lo "lancio" con: ./es9
Aggiungi l'opzione "-lm" alla riga in cui compili il tuo codice. È necessaria quando si usa gcc per usare le librerie matematiche. In altri compilatore non è necessario.
dove la aggiungo?
cosi:
gcc es9.c -o es9 -lm
?
cosi:
gcc es9.c -o es9 -lm
?
Sì
risolto! grazie!