Projet

Général

Profil

« Précédent | Suivant » 

Révision 508

Ajouté par Romain CHAMBELLON il y a presque 3 ans

Fin question 6 : Ecriture fonction distance_a_la_plus_proche_zone

Voir les différences:

main.c
float vitmax;
} Zone;
Zone zones[] = {
{{44.7887762, -3.012}, 50}, /* Descripteur de la premi?re zone */
{{44.7891220, -3,013}, 70},
};
Position decode_trame(char * trame){ /*Decodage de la trame*/
if (trame_cmp(trame, "GPGGA")!= 1){ /* On ne prend que les trames de type GPGGA*/
printf("Cette trame n'est pas au bon format.");
......
float v = d * 3600; /* Obtention de la vitesse grace a la distance */
return v;
}
int distance_a_la_plus_proche_zone(Position p, Zone r[], int nb_zones, float *d){ /* *d sert de pointeur */
int i = 1;
*d = calcul_distance(p, r[0].rpos); /*Initialisation par d?faut, on consid?re la premi?re zone comme zone la plus proche*/
float dist;
while (i < nb_zones){ /*Comparaison avec la zone pr?c?dente pour voir qui est la plus proche*/
dist = calcul_distance(p, r[i].rpos);
if (dist < *d){
*d = dist;
}
i++;
}
return i;
}
/* Ne pas modifier cette fonction */
int main(int argc,char ** argv)

Formats disponibles : Unified diff