Compteur en c
Résolu
James56
Messages postés
161
Date d'inscription
Statut
Membre
Dernière intervention
-
kiop -
kiop -
A voir également:
- Compteur en c
- Compteur électrique - Guide
- Compteur contractions - Télécharger - Santé & Bien-être
- Comment ralentir un compteur linky forum - Accueil - Objets connectés
- Compteur point fléchette excel - Télécharger - Sport
- Compteur cyber café gratuit - Télécharger - Outils professionnels
6 réponses
Voilà une idée :
Après, ce qu'il y a dans nbn tu en fais ce que tu veux. Le plus propre serait de les stocker dans un tableau plutôt que de déclarer des variables dynamiques.
En faisant de nb une chaîne ça serait certainement encore plus court :)
#include <stdio.h> #include <stdlib.h> #include <math.h> int main(int argc, char *argv[]) { int nb=8480963; // Nombre dont il faut récupérer les chiffres int nbn; // Chiffre récupéré du nombre nb while(nb) // Tant que nb est différent de 0 { nbn=nb%10; // Mettre dans nbn l'unité de nb (dernier chiffre à droite) nb-=nbn; nb/=10; // Tronquer nb, par exemple 123456 devient 12345 printf("nb: %d; nbn: %d\n",nb,nbn); } return EXIT_SUCCESS; }
Après, ce qu'il y a dans nbn tu en fais ce que tu veux. Le plus propre serait de les stocker dans un tableau plutôt que de déclarer des variables dynamiques.
En faisant de nb une chaîne ça serait certainement encore plus court :)
moi j'aurai fait un truc du genre afficher le nombre dans une chaine (avec un sprintf), et récuperer chaque case de la chaine (au pire, on soustrait la valeur ascii de '0' pour convertir du nombre ascii au nombre décimal) ...
ou bien tu px mettre les nombres dans un tableau, ou eventuellement un pointeur, compter la longueur et faire le teste, tant que les chiffres sont inferieur à la longueur recupérée dans une variable recupérer chaque chiffre dans une variable initialisée par exemple à a...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ducoup j'ai fait sa :
et voila chaque chifre de la variable score se retrouve dans une case du tableau puis j'interoge chaque case pour savoir ce que je doit afficher.
j'ai tout mis au cas ou sa interesse quelq'un..
merci pour votre aide, sa ma bien servi
int score =12345; int digit[6] = {0} ; for (g=0 ;g < score; g++) { digit [4] ++; if (digit [4]>9) { digit [3] ++; digit [4] =0; } if (digit [3] >9) { digit [2]++; digit [3]=0; } if (digit [2] >9) { digit [1]++; digit [2]=0; } if (digit [1] >9) { digit [0]++; digit [1]=0; } } for (h =0; h <5 ; h++) { position_pts.x = 700+h*56; position_pts.y = 300; switch(digit[h]) { case 0: zero = IMG_Load("img/0r.PNG"); SDL_BlitSurface(zero, NULL, ecran, &position_pts); break; case 1: un = IMG_Load("img/1r.PNG"); SDL_BlitSurface(un, NULL, ecran, &position_pts); break; case 2: deux = IMG_Load("img/2r.PNG"); SDL_BlitSurface(deux, NULL, ecran, &position_pts); break; case 3: trois = IMG_Load("img/3r.PNG"); SDL_BlitSurface(trois, NULL, ecran, &position_pts); break; case 4: quatre = IMG_Load("img/4r.PNG"); SDL_BlitSurface(quatre, NULL, ecran, &position_pts); break; case 5: cinq = IMG_Load("img/5r.PNG"); SDL_BlitSurface(cinq, NULL, ecran, &position_pts); break; case 6: six = IMG_Load("img/6r.PNG"); SDL_BlitSurface(six, NULL, ecran, &position_pts); break; case 7: septe = IMG_Load("img/7r.PNG"); SDL_BlitSurface(septe, NULL, ecran, &position_pts); break; case 8: huite = IMG_Load("img/8r.PNG"); SDL_BlitSurface(huite, NULL, ecran, &position_pts); break; case 9: neuf = IMG_Load("img/9r.PNG"); SDL_BlitSurface(neuf, NULL, ecran, &position_pts); break; } }
et voila chaque chifre de la variable score se retrouve dans une case du tableau puis j'interoge chaque case pour savoir ce que je doit afficher.
j'ai tout mis au cas ou sa interesse quelq'un..
merci pour votre aide, sa ma bien servi