"sqrt" comando sconosciuto

di il
9 risposte

"sqrt" comando sconosciuto

Ciao ragazzi, allora ho un problemino con la compilazione di un semplice programma scritto in C. Uso Visual Studio 2010 ultimate e nel momento in cui vado a compilare il programma mi esce il solito errore "error C3861: 'sqrt': identifier not found".

Nelle librerie ho inserito il math.h ma nonostante ciò il comando non va. La sintassi è la seguente:
double distanza,somma;
	somma=(x1*x2+y1*y2);
	distanza = sqrt (somma);
Grazie a tutti dell'aiuto!

9 Risposte

  • Re: "sqrt" comando sconosciuto

    Magari non hai incluso la libreria math.h
    #include <math.h>
  • Re: "sqrt" comando sconosciuto

    Io preferisco usare la potenza, poichè puoi calcolare la radice cubica e altre. Ecco un esempio:
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    
    int main(void) {
        float m, n;
        m = 49.0f;
        n = pow(m, 1.0f / 2.0f); // Sostituire 2.0f con 3.0f per la radice cubica
        printf("%f", n);
        system("PAUSE >NUL");
        return 0;
    }
  • Re: "sqrt" comando sconosciuto

    Innanzitutto grazie delle risposte, come già ho detto sopra la libreria math.h l'ho gia inclusa nel programma ma non va.
    Alee il tuo consiglio può anche andar bene ma a me serve una cosa più pratica e veloce e vorrei capire il perchè non va!
    All'epoca utilizzavo un compilatore in dos e il comando funzionava perfettametne, come mai il visual mi da errore?
  • Re: "sqrt" comando sconosciuto

    Posta il prog
  • Re: "sqrt" comando sconosciuto

    Prova a includere o solo <math> oppure <cmath>
  • Re: "sqrt" comando sconosciuto

    davoleo ha scritto:


    prova a includere o solo <math> oppure <cmath>
    ok ci provo
  • Re: "sqrt" comando sconosciuto

    Nono cmath ci va quando si fa un prog in c++. Ti ho detto posta il prog!
  • Re: "sqrt" comando sconosciuto

    Header.h
    
    #include <math.h>
    #include <stdio.h>
    #include <stdlib.h>
    double distanza(double x1,double y1,double x2,double y2);
    main.c
    
    #include "header_.h"
    int main ()
    {
    	double x1,y1,x2,y2,d;
    	printf("Inserire le coordinate del primo punto (float): ");
    	scanf("%f %f", &x1,&y1);
    	printf("Inserire le coordinate del secondo punto (float): ");
    	scanf("%f %f", &x2,&y2);
    	d = distanza(x1,y1,x2,y2);
    	printf("la distanza dei punti è: %f\n",d);
    	return 0;
    }
    
    distanza.c
    
    double distanza(double x1,double y1,double x2,double y2)
    {
    	double distanza,somma;
    	somma=(x1*x2+y1*y2);
    	distanza = sqrt (somma);
    	return distanza;
    }
    
  • Re: "sqrt" comando sconosciuto

    Non hai incluso gli header in distanza.c

    EDIT: Non so se è giusto come hai fatto di solito io uso solo un file .c o .cpp
Devi accedere o registrarti per scrivere nel forum
9 risposte