Bonjour à tous
j'ai rencontré un problème au niveau du calcul à l'intérieure d'une fonction.
je récupère des valeurs à partir du clavier 4*3 puis je fait appel à ma_fonction. mais toujours le calcul est faux!!!!!.
quelqu'un peut m'aider!
merci d'avance
Voici un extrait du code:
Code:char code1[10]; char txt[15]; /////////////code_enter/////////////// void code_enter() { kp = 0;// Reset key code variable // Wait for key to be pressed and released do kp = Keypad_Key_Click();// Store key code in kp variable while (!kp); switch (kp) { case 1: kp = '1'; break; // 1 case 2: kp = '2'; break; // 2 case 3: kp = '3'; break; // 3 case 5: kp = '4'; break; // 4 case 6: kp = '5'; break; // 5 case 7: kp = '6'; break; // 6 case 9: kp = '7'; break; // 7 case 10: kp = '8'; break; // 8 case 11: kp = '9'; break; // 9 case 13: kp = 46; break; case 14: kp = 48; break; case 15: kp = 45; break; } code1[i] = kp; Lcd_Chr(2, i+1, code1[i]); i++; } ////////////////// void ma_fonction(int yy, int dd , int mm ) { float d; d=yy-floor((7*(yy+floor((mm+9)/12)))/4)+floor((275*mm)/9)+dd-730530; Lcd_Cmd(_LCD_CLEAR); FloatToStr(d,txt); Lcd_Out(1, 1,"le résultat est :"); Lcd_Out(2,1 ,txt) } ///////////////// void main() { int year,mois,jour; Lcd_Cmd(_LCD_CLEAR); Lcd_Out(1, 1,"entrer l'année"); for ( j=0; j<2 ; j++) { code_enter(); } year=((code1[0]-'0')*10+(code1[1]-'0')); Lcd_Cmd(_LCD_CLEAR); Lcd_Out(1, 1,"entrer le mois"); for ( j=0; j<2 ; j++) { code_enter(); } jours=((code1[0]-'0')*10+(code1[1]-'0')); Lcd_Cmd(_LCD_CLEAR); Lcd_Out(1, 1,"entrer le jours "); for ( j=0; j<2 ; j++) { code_enter(); } jour=((code1[0]-'0')*10+(code1[1]-'0')); ma_fonction(year, mois , jour); }
-----