Index: branch/MBADINGA/sp4a12/main.c
===================================================================
--- branch/MBADINGA/sp4a12/main.c	(revision 270)
+++ branch/MBADINGA/sp4a12/main.c	(revision 271)
@@ -42,6 +42,7 @@
 int decode_int (char c){
 
     int a=0;   /* initialisation de la variable test de notre fonction (la valeur retourné de type entier) */
+
     if (c>=48 && c<=57) /*test de condition sur la valeur décimale  du caractère passer en paramètre */
     {
         a=c-48; /* conversion de caractère en valeur décimale*/
@@ -56,14 +57,15 @@
 
 int decode_nombre(char * ch, int n)
 {
-    int i;
-    int res = 0;
+    int i,res;
+    res = decode_int(ch[0]);
     for (i=0; i<=n; i++)
     {
-        res = res + pow(10, (n-i-1) * decode_int(ch[i]));
+        res = decode_int(ch[i])+res*10;
     }
     return res;
 }
+
 
 /* Fonction à modifier !!!!!*/
 
@@ -79,11 +81,8 @@
 
 void test_decode_int(void)
 {
-    char i; /* declaration d'un caractère i de type char permettant le test*/
-    for (i=0 ; i<10 ; i++){
-        if (decode_int('i')==-1) /* si la valeur retourné par la fonction decode_int est égale -1 alors en affiche l'erreur */
+        if (decode_int('0')!=0) /* si la valeur retourné par la fonction decode_int est égale -1 alors en affiche l'erreur */
             printf("Erreur ecriture fonction decode_int\n");
-    }
 }
 
 /* fonction servant de test unitaire pour la validation de la fonction decode_nombre*/
@@ -110,11 +109,44 @@
     int degre ; /* La valeur entière du degré de notre latitude*/
     degre = decode_nombre(latitude,2); /* On ne récupère que les 2 premier chiffres de la latitude pour définir le degré*/
     minutes_flot = latitude-degre*pow(10,2); /* La valeur du degré multpliée par 10 est soustraite à celle de la latitude*/
-    minutes_flot = minutes_flot/60; /* LA valeur en minute est retranscrite en flottant ejn la divisant par 60 qui correspond à 1 degré, elle doit être inférieure à 1*/
+    minutes_flot = minutes_flot/60; /* La valeur en minute est retranscrite en flottant ejn la divisant par 60 qui correspond à 1 degré, elle doit être inférieure à 1*/
     lat_flot = degre + minutes_flot; /* La somme du degré et de la valeur minute en flottant donne la valeur de notre latitude*/
-    return lat_flot;
 
+return lat_flot;
+
 }
+
+float longitude_flottant(char longitude){
+
+    float lon_flot,minutes_flot; /* On définit notre resultat de longitude en flottant comme celui de la valeur en minutes*/
+    int degre; /* La valeur entière du degré de notre longitude*/
+    degre= decode_nombre(longitude,3); /* On ne récupère que les 2 premiers chiffres de les 3 premiers chiffres pour définir le degré*/
+    minutes_flot = longitude-degre*pow(10,2); /* La valeur du degré multpliée par 10 est soustraite à celle de la longitude*/
+    minutes_flot = minutes_flot/60; /* La valeur en minute est retranscrite en flottant ejn la divisant par 60 qui correspond à 1 degré, elle doit être inférieure à 1*/
+    lon_flot= degre + minutes_flot; /* La somme du degré et de la valeur minute en flottant donne la valeur de notre latitude*/
+
+return lon_flot;
+
+}
+
+void test_latitude_flottant (void){
+
+    /* On utilisera l'exemple explicité dans le support de TP*/
+    if (latitude_flottant(3723.0475)-37.387458 > 0.0001){ /* 37.3874580- 37.3874580 = 0  si cette condition n'est pas vérifier alors la fonction n'est pas correcte.*/
+        printf("Erreur calcul latitude");
+        exit(-1);
+    }
+
+}
+
+void test_longitude_flottant(void){
+    /*On utilisera l'exemple explicité dans le support de TP*/
+    if (longitude_flottant("00306.6036")-3.110060 > 0.0001){ /* 3.110060 - 3.110060=0  si cette condition n'est pas vérifier alors la fonction n'est pas correcte.*/
+        printf("Erreur calcul latitude");
+        exit(-1);
+    }
+}
+
 
 /*Ajouter vos tests unitaires dans cette fonction.*/
 
@@ -142,10 +174,16 @@
     }
 
 /*
-     test_decode_int(); //appel de la fonction test decode int pour le test unitaire sur la concersion en decimale
+     test_decode_int(); //appel de la fonction test decode int pour le test unitaire sur la conversion en decimale
 
-     test_decode_nombre(); */
-
+     test_decode_nombre(); //appel de la fonction test decode nombre pour le test unitaire sur la conversion en nombre
+
+
+     test_latitude_flottant(); //appel de la fonction test decode int pour le test unitaire sur la conversion en flottant de la latitude
+
+
+     test_longitude_flottant(); // appel de la fonction test decode int pour le test unitaire sur la conversion en flottant de la longitude
+*/
 }
 
 
