Aide Programme Distance

Aide Programme Distance - C - Programmation

Marsh Posté le 30-05-2013 à 08:46:09    

Bonjour a tous, alors voila j'ai un problème( :sweat: ) avec un "programme" que j'ai fait, et je n'arrive pas a voir mon erreur, voici le programme(il calcul la distance entre 2 points):
 
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
 
typedef struct{
    float x;
    float y;
}Point;
 
void lirepoint (Point *P){
    printf("x=" );
    scanf("%f", &((*P).x));
    printf("y=" );
    scanf("%f", &((*P).y));
}
 
void afficherpoint (x,y){
    printf("(%d;%d)", x, y);
}
 
 
int main()
{
    Point A;
    Point B;
    float AB;
    printf("Point A: \n" );
    lirepoint(A);
    printf("Point B: \n" );
    lirepoint(B);
    AB = sqrt(((B.x-A.x)*(B.x-A.x)+(B.y-A.y)*(B.y-A.y)));
    printf("La dictance AB = %f", AB);
 
    return 0;
}
 
Merci a tous pour vos futures réponses  :)

Reply

Marsh Posté le 30-05-2013 à 08:46:09   

Reply

Marsh Posté le 30-05-2013 à 15:02:03    

Bonjour,
A tout hasard: sqrt demande un double et pas un float.
C'est sqrtf qui prendrais un float ( http://linux.die.net/man/3/sqrt )


---------------
Seul Google le sait...
Reply

Marsh Posté le 30-05-2013 à 15:22:03    

trollpassif a écrit :

Bonjour a tous, alors voila j'ai un problème( :sweat: ) avec un "programme" que j'ai fait, et je n'arrive pas a voir mon erreur, voici le programme(il calcul la distance entre 2 points):


 
Gné? T'as essayé de compiler "ton" programme? Parce que le message d'erreur du compilateur est assez clair. Si tu ne vois pas un truc qui cloche dans ces 3 lignes, revois tes bases du C:
 

Code :
  1. void lirepoint (Point *P);
  2. Point A;
  3. lirepoint(A);


 
Une fois corrigé, ça fonctionnera déjà un peu mieux.

Reply

Marsh Posté le 30-05-2013 à 16:09:41    

+1 tpierron.

 

PS: si tu ne sais pas, quand tu envoies l'adresse d'une variable à une fonction, cette fonction recoit un pointeur.
PS² : (*P).x revient à faire P->x


Message édité par Profil supprimé le 30-05-2013 à 16:10:36
Reply

Marsh Posté le 31-05-2013 à 03:09:05    

@tpierron
 
Je débute en C, et j'ai relu mon cours et tout, et je ne vois pas mon erreur, je sais, je suis nul, mais bon, si je l'ai posté ici, c'est que je ne voyais vraiment pas mon erreur :s

Reply

Marsh Posté le 31-05-2013 à 06:07:32    

C'est bon, j'ai trouvé mon erreur, je suis un boulet, merci a tous pour votre aide, bonne journée =D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed