Additions soustraction dans une chaine de caracteres
Fermé
ld09
Messages postés
9
Date d'inscription
dimanche 22 mai 2016
Statut
Membre
Dernière intervention
31 janvier 2017
-
31 janv. 2017 à 11:36
nagaD.scar Messages postés 4280 Date d'inscription samedi 8 septembre 2007 Statut Membre Dernière intervention 4 janvier 2023 - 31 janv. 2017 à 14:03
nagaD.scar Messages postés 4280 Date d'inscription samedi 8 septembre 2007 Statut Membre Dernière intervention 4 janvier 2023 - 31 janv. 2017 à 14:03
A voir également:
- Additions soustraction dans une chaine de caracteres
- Deux caractères manquent dans cette url ✓ - Forum Programmation
- Excel extraire chaine de caractère après un caractère ✓ - Forum Excel
- Clavier mac caractères spéciaux - Guide
- Caractères ascii - Guide
- Caracteres speciaux - Guide
1 réponse
nagaD.scar
Messages postés
4280
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
4 janvier 2023
240
31 janv. 2017 à 13:39
31 janv. 2017 à 13:39
Salut,
Le problème principale se trouve à ce niveau:
En effet tu multiplie par -1 et dans le cas présent tu à deux nombres négatifs ... de même si tu fais 1-1+5, le signe est en erreur.
Je jette un oeil et je te redis
naga
Le problème principale se trouve à ce niveau:
return -1*calc_sum_string(s+1);
En effet tu multiplie par -1 et dans le cas présent tu à deux nombres négatifs ... de même si tu fais 1-1+5, le signe est en erreur.
Je jette un oeil et je te redis
naga
31 janv. 2017 à 13:50
31 janv. 2017 à 14:03
Aussi, tu ne sera qu en mesure de ne gérer que des chiffres ( 0-9 quoi). j ai fais ca:
#include <stdio.h> #define MAX_LENGTH 100 int calc_sum_string(char *s) { if(*s=='\0'){return 0;} return (*s=='+' || *s=='-' ? ( (*(s+1)-'0') * ( *s=='+' ? 1 : -1 ) + calc_sum_string(s+2)) : (*s)-'0' + calc_sum_string(s+1)) ; } int main() { char s[MAX_LENGTH]; scanf("%s", s); printf("%d", calc_sum_string(s)); return 0; }aussi, avec ce code tu peux commencer avec un signe ca ne changera rien
demandes moi pour les points pas clairs
naga