eishtein
Messages postés52Date d'inscriptiondimanche 6 décembre 2009StatutMembreDernière intervention23 janvier 2014
-
14 mai 2011 à 18:19
lynxtyle
Messages postés79Date d'inscriptionsamedi 25 septembre 2004StatutMembreDernière intervention31 octobre 2011
-
16 mai 2011 à 08:39
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
lynxtyle
Messages postés79Date d'inscriptionsamedi 25 septembre 2004StatutMembreDernière intervention31 octobre 20112 16 mai 2011 à 08:39
Le vrai Einstein doit désormé être mort une seconde fois...
Ton programme sert à quoi ? savoir si un nombre est pair ou impair ?
Alors pour ta gouverne if (x % 2 == 0) { //x est pair } else { //x est impair } CQFD pas besoin de partir dans des vecteurs !
Et si tu calcul se vecteur pour éviter les caculs par la suite, sache que ta méthode sera plus lente et aura consommé toute la mémoire !
Et si tu souhaite vraiment faire un vecteur pair/impair :
int i=1;
int[] Vpairs; //<- enfin il serait judissieux de mettre une gestion de la mémoire
int[] Vimpairs; // <- idem
while(i<max){
Vimpairs[i]=1;
i++;
Vpairs[i]=1;
i++;
}
Voilà tu as tes 2 vecteurs ! (un aurait suffit)
Enfin si tu veux savoir si un nombre trop grand pour rentrer dans une variable est pair ou impair :
- tu récup le nombre sous forme de chaine de caractère
- tu vas sur le dernier caractère
- tu le transforme en nombre (char -> int)
- tu vérifis si c'est 0 ou s'il est divisible par 2 : si oui il est pair sinon impair
- CQFD
(variante : dans la table ascii le char 1 vaut en décimal 49, 2 vaut 50 ainsi de suite... donc tu peux traiter directement la valeur char sans chercher à transformer ton 1(char) en 1(int) etc...)
eishtein
Messages postés52Date d'inscriptiondimanche 6 décembre 2009StatutMembreDernière intervention23 janvier 2014 14 mai 2011 à 18:19
merci de me le rappeler car j'avais cru avoir envoyé le zip au lieu de la solution
16 mai 2011 à 08:39
Ton programme sert à quoi ? savoir si un nombre est pair ou impair ?
Alors pour ta gouverne if (x % 2 == 0) { //x est pair } else { //x est impair } CQFD pas besoin de partir dans des vecteurs !
Et si tu calcul se vecteur pour éviter les caculs par la suite, sache que ta méthode sera plus lente et aura consommé toute la mémoire !
Et si tu souhaite vraiment faire un vecteur pair/impair :
int i=1;
int[] Vpairs; //<- enfin il serait judissieux de mettre une gestion de la mémoire
int[] Vimpairs; // <- idem
while(i<max){
Vimpairs[i]=1;
i++;
Vpairs[i]=1;
i++;
}
Voilà tu as tes 2 vecteurs ! (un aurait suffit)
Enfin si tu veux savoir si un nombre trop grand pour rentrer dans une variable est pair ou impair :
- tu récup le nombre sous forme de chaine de caractère
- tu vas sur le dernier caractère
- tu le transforme en nombre (char -> int)
- tu vérifis si c'est 0 ou s'il est divisible par 2 : si oui il est pair sinon impair
- CQFD
(variante : dans la table ascii le char 1 vaut en décimal 49, 2 vaut 50 ainsi de suite... donc tu peux traiter directement la valeur char sans chercher à transformer ton 1(char) en 1(int) etc...)
14 mai 2011 à 18:19