Isoler deux chiffres d'une chaine de caractère

newixz Messages postés 8 Date d'inscription jeudi 9 février 2006 Statut Membre Dernière intervention 9 février 2006 - 9 févr. 2006 à 14:26
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 - 9 févr. 2006 à 23:45
bonjour je souhaiterais isoler deux chiffres d'une chaine de caractère

vu que je suis noob

je me suis deja fait aider

voici le code



#include <stdio.h>

#include <stdlib.h>



int main(void)

{

int compte2;

int compte4;

int i;

char temp[99999999999999];



char saisie[464572813264597253724267295491273495729571975];





compte2=0;

compte4=0;

for(i=0;i<strlen(saisie);i++)

{

if (saisie[i]=='2')

compte2+=1;

if (saisie[i]=='4')

compte4+=1;



printf("Il y a %d fois le chiffre 2 et %d fois le chiffre 4",compte2,compte4);

}

return EXIT_SUCCESS;

}



il me reste 3 erreur un overflow(l11) pour les caractere j'ai rajouté le temp, change rien,

"strlen"(l16) et constant expression is not interal (l9)



merci de votre aide

10 réponses

newixz Messages postés 8 Date d'inscription jeudi 9 février 2006 Statut Membre Dernière intervention 9 février 2006
9 févr. 2006 à 14:27
j'ai trouvé l'erreur ligne 9 j'ai mis 0
0
newixz Messages postés 8 Date d'inscription jeudi 9 février 2006 Statut Membre Dernière intervention 9 février 2006
9 févr. 2006 à 14:28
en faites j'avais encore une erreur et je l'ai virer et je l'ai plus
0
newixz Messages postés 8 Date d'inscription jeudi 9 février 2006 Statut Membre Dernière intervention 9 février 2006
9 févr. 2006 à 14:32
#include <stdio.h>

#include <stdlib.h>

#include <string.h>



int main(void)

{

int compte2;

int compte4;

int i;





char saisie[464572813264597253724267295491273495729571975];





compte2=0;

compte4=0;

for(i=0;i<strlen(saisie);i++)

{

if (saisie[i]=='2')

compte2+=1;

if (saisie[i]=='4')

compte4+=1;



}



printf("Il y a %d fois le chiffre 2 et %d fois le chiffre 4",compte2,compte4);



return EXIT_SUCCESS;





}



il ne reste plus qu'une erreur ligne 12 ( a la chaine de caractere mais je vois pas)
0
spiky31 Messages postés 106 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 11 février 2008
9 févr. 2006 à 14:36
char saisie[x] alloue une chaine de caractere de taille x.
Si x vaut 464572813264597253724267295491273495729571975 !! T'aura jamais assez de memoire !!
essaye const char *saisie = "464572813264597253724267295491273495729571975";
la ca marchera ...
ensuite revoie les base du C parce que la j'ai pas le temps de te fare un cours ...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
newixz Messages postés 8 Date d'inscription jeudi 9 février 2006 Statut Membre Dernière intervention 9 février 2006
9 févr. 2006 à 14:52
ensuite revoie les base du C parce que la j'ai pas le temps de te fare un cours ...

j'ai dit je suis noob j'ai commencer ce matin a 8h ..... soit donc un peut indulgent



et

#include <stdio.h>

#include <stdlib.h>

#include <string.h>



int main(void)

{

int compte2;

int compte4;

int i;





const char *saisie ="464572813264597253724267295491273495729571975";





compte2=0;

compte4=0;

for(i=0;i<strlen(saisie);i++);

{

if (saisie[i]=='2')

compte2+=1;

if (saisie[i]=='4')

compte4+=1;



}



printf("Il y a %d fois le chiffre 2 et %d fois le chiffre 4",compte2,compte4);



return EXIT_SUCCESS;



}

ne marche toujours pas
0
spiky31 Messages postés 106 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 11 février 2008
9 févr. 2006 à 14:57
oops un truc que j'ai pas vu :
for(i=0;i<strlen(saisie);i++); --> enleve le point virgule sinon aucune instructions ne s'éxécutera a l'interieur de ta boucle "for"
0
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
9 févr. 2006 à 14:58
int NbOccurence(char *sz, int iNbr)

{

char *c;

c = sz;

int iCount = 0;



if ( (iNbr < 0) || (iNbr > 9) )


return -1;



while(*c)

{

if ( *c == 48+iNbr )
iCount++;



c++;

}

return iCount;

}
if(!Meilleur("Joky")) return ERREUR;<
0
wxccxw Messages postés 755 Date d'inscription samedi 15 mai 2004 Statut Membre Dernière intervention 30 janvier 2011
9 févr. 2006 à 19:57
perso j'utiliserai plus le programme de joky.
0
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
9 févr. 2006 à 23:20
Perso moi aussi lol
if(!Meilleur("Joky")) return ERREUR;<
0
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
9 févr. 2006 à 23:45
N'empêche pour info

J'crois que je suis amoureux de cette ligne :

char saisie[464572813264597253724267295491273495729571975];

if(!Meilleur("Joky")) return ERREUR;<
0