Projet

Général

Profil

« Précédent | Suivant » 

Révision 17

Ajouté par albest il y a environ 4 ans

ajout fonction latitude et longitude

Voir les différences:

branch/best/sp4a12/main.c
}
float conv_lat(char * latitude){
float val = decode_nombre(latitude,4);
float res = 0;
res = (int)(latitude/100);
res += (latitude - res*100)/60;
for (int i = 5; i < 9;i++){
val += (decode_int(latitude[i]))*pow(10,-i+4);
}
res = (int)(val/100);
res += (val - res*100)/60;
return res;}
float conv_long(char * longitude){
float val = decode_nombre(longitude,5);
float res = 0;
for (int i = 6; i < 10;i++){
val += (decode_int(longitude[i]))*pow(10,-i+5);
}
res = (int)(val/100);
res += (val - res*100)/60;
return res;}
float conversion(char * chaine){
int cpt = 0;
while (chaine[cpt]!='\0'){
cpt++;
}
if (cpt == 9){
return conv_lat(chaine);
}
else if(cpt==10){
return conv_long(chaine);
}
else{
return -1.0;
}
}
//Fonction ? modifier !!!!!
void traitement(char * trame){
......
printf ("Erreur Test unitaire decode_nombre.\n");
exit(-1);
}
if (conv_lat(3723.2474)!=37.387458){
if (fabs(conv_lat("3723.2475")-37.387458)>= pow(10,-6)){
printf ("Erreur Test unitaire conv_lat.\n");
exit(-1);
}
if (fabs(conv_long("00306.6036")-3.11006)>= pow(10,-6)){
printf ("Erreur Test unitaire conv_long.\n");
exit(-1);
}
if (fabs(conversion("00306.6036")-3.11006)>= pow(10,-6)){
printf ("Erreur Test unitaire conversion.\n");
exit(-1);
}
if (fabs(conversion("3723.2475")-37.387458)>= pow(10,-6)){
printf ("Erreur Test unitaire conversion.\n");
exit(-1);
}
}
......
int main(int argc,char ** argv)
{
//tests_unitaires();
tests_unitaires();
// Affichage des trames definies dans la table trames.
printf ("Trames de tests tableau trames:\n");

Formats disponibles : Unified diff