Probleme avec un exercice sur borland C
nabil emsi
Messages postés
27
Date d'inscription
Statut
Membre
Dernière intervention
-
nabil emsi Messages postés 27 Date d'inscription Statut Membre Dernière intervention -
nabil emsi Messages postés 27 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Ecrire un programme qui lit un nombre entier N formé de 4 chiffres donnée par l'utilisateur et qui calcule et affiche chaque chiffre composant le nombre N sur une ligne
Exemple :
Pour N=4963,le programme affiche :
le chiffre 1 est : 4
le chiffre 2 est : 9
le chiffre 3 est : 6
le chiffre 4 est : 3
Sur borland C
merci bcp
Ecrire un programme qui lit un nombre entier N formé de 4 chiffres donnée par l'utilisateur et qui calcule et affiche chaque chiffre composant le nombre N sur une ligne
Exemple :
Pour N=4963,le programme affiche :
le chiffre 1 est : 4
le chiffre 2 est : 9
le chiffre 3 est : 6
le chiffre 4 est : 3
Sur borland C
merci bcp
A voir également:
- Probleme avec un exercice sur borland C
- Borland database engine - Télécharger - Édition & Programmation
- Borland pascal - Télécharger - Édition & Programmation
- Borland delphi 7 - Télécharger - Langages
- Fleur d'encre 5eme corrigé exercice ✓ - Forum PDF
- Transmath 3eme exercice ✓ - Forum Études / Formation High-Tech
14 réponses
Bonjour,
Soit a1, a2, a3, a4 les chiffres des milliers, centaines, dizaines et unité.
Pour trouver a1, une simple division par 1000 fait l'affaire.
Pour trouver a2, il faut recalculer N qui vaudra N modulo 1000, et a2 vaudra N/100.
Etc.
Je te laisse poster le début du code pour qu'on puisse te corriger éventuellement.
Cdlt,
Soit a1, a2, a3, a4 les chiffres des milliers, centaines, dizaines et unité.
Pour trouver a1, une simple division par 1000 fait l'affaire.
Pour trouver a2, il faut recalculer N qui vaudra N modulo 1000, et a2 vaudra N/100.
Etc.
Je te laisse poster le début du code pour qu'on puisse te corriger éventuellement.
Cdlt,
Beh je t'ai aidé.
Dis-moi plutôt ce que tu trouves difficile ?
Si tu trouves ça trop difficile, fais le programme lorsque l'utilisateur tape un seul chiffre. Par exemple, le chiffre 5. Après, tu feras pour deux chiffres comme 14.
Etc.
Dis-moi plutôt ce que tu trouves difficile ?
Si tu trouves ça trop difficile, fais le programme lorsque l'utilisateur tape un seul chiffre. Par exemple, le chiffre 5. Après, tu feras pour deux chiffres comme 14.
Etc.
j'ai fait un programme mais c'est nul
#include <stdio.h>
#include <conio.h>
main()
{
double N,A1,A2;
double reste;
printf("Introduisez le nombre N : ");
scanf("%lf",N);
A1=N/10;
A2=reste;
printf("%lf 10 et %lf 1 \n",1ch,2ch);
getch();
}
#include <stdio.h>
#include <conio.h>
main()
{
double N,A1,A2;
double reste;
printf("Introduisez le nombre N : ");
scanf("%lf",N);
A1=N/10;
A2=reste;
printf("%lf 10 et %lf 1 \n",1ch,2ch);
getch();
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est un début.
Je t'ai corrigé ce qui n'allait pas. Et je t'ai mis sur la piste.
A toi de comprendre l'algorithme, de faire des tests et de remplir les petits points du programme suivant :
Ce programme ensuite devra être amélioré pour calculer la valeur de div tout seul, en fonction de ce que l'utilisateur tape (prochaine étape) ;-))).
Cdlt,
Je t'ai corrigé ce qui n'allait pas. Et je t'ai mis sur la piste.
A toi de comprendre l'algorithme, de faire des tests et de remplir les petits points du programme suivant :
#include <stdio.h> int main(void) { int N,A1; int reste; /*div contient 1 si le nombre est compris entre 0 et 9, 10 si c'est entre 10 et 99, ...*/ int div=1000; printf("Introduisez le nombre N : "); scanf("%d",&N); reste=N; while(...) { /*on récupère le ch*/ A1=reste/...; reste=reste%...; div=div/...; printf("chiffre=%d\n",...); } getchar(); return 0; }
Ce programme ensuite devra être amélioré pour calculer la valeur de div tout seul, en fonction de ce que l'utilisateur tape (prochaine étape) ;-))).
Cdlt,
Non désolé, je ne fais pas ton devoir.
Si tu veux de l'aide, formule clairement ce qui te pose problème et on t'expliquera.
Je t'ai déjà donné le squelette de ton programme...
Si tu veux de l'aide, formule clairement ce qui te pose problème et on t'expliquera.
Je t'ai déjà donné le squelette de ton programme...
bonjour
pour faire un programme dans ce genre ce n'est pas trop compliqué (comme fiddy je ne le ferai pas a ta place quand même)
dans les opérations en C tu a le modulo (%) qui te renvoie le reste de la division
par exemple 10%3 te renverra 1 (10/3 = 3 et le reste est 1)
dans ton cas tu dois faire la même chose
Soit a1, a2, a3, a4 les chiffres des milliers, centaines, dizaines et unité.
Pour trouver a1, une simple division par 1000 fait l'affaire.
Pour trouver a2, il faut recalculer N qui vaudra N modulo a1, et a2 vaudra N/100.
Etc.
(désolé pour le plagia^^)
tout est la
pour a1 tu fait une simple division par 1000 (par exemple 4527 /1000 = 4.527, donc comme c'est des entiers le programme renverra 4)
ensuite tu dois faire N % 1000 qui te retournera 527
tu dois donc calculer a2 a3 et a4 de la même facon
si tu ne comprend toujours pas dis nous exactement quelle partie tu ne comprend pas pour qu'on puisse t'expliquer clairement stp
pour faire un programme dans ce genre ce n'est pas trop compliqué (comme fiddy je ne le ferai pas a ta place quand même)
dans les opérations en C tu a le modulo (%) qui te renvoie le reste de la division
par exemple 10%3 te renverra 1 (10/3 = 3 et le reste est 1)
dans ton cas tu dois faire la même chose
Soit a1, a2, a3, a4 les chiffres des milliers, centaines, dizaines et unité.
Pour trouver a1, une simple division par 1000 fait l'affaire.
Pour trouver a2, il faut recalculer N qui vaudra N modulo a1, et a2 vaudra N/100.
Etc.
(désolé pour le plagia^^)
tout est la
pour a1 tu fait une simple division par 1000 (par exemple 4527 /1000 = 4.527, donc comme c'est des entiers le programme renverra 4)
ensuite tu dois faire N % 1000 qui te retournera 527
tu dois donc calculer a2 a3 et a4 de la même facon
si tu ne comprend toujours pas dis nous exactement quelle partie tu ne comprend pas pour qu'on puisse t'expliquer clairement stp
#include <stdio.h>
#include <conio.h>
main(void)
{
int N,A1,A2,A3,A4;
int reste;
printf("Introduisez le nombre N : ");
scanf("%d",&N);
A1=N/1000;
reste=N%1000;
printf("le 1er chiffre est:A1");
A2=reste/100;
reste=A1%100;
printf("le 2eme chiffre est:A2");
A3=reste/10;
reste=A2%10;
printf("le 3eme chiffre est:A3");
A4=reste;
printf("le 4eme chiffre est :A4");
getch();
}
#include <conio.h>
main(void)
{
int N,A1,A2,A3,A4;
int reste;
printf("Introduisez le nombre N : ");
scanf("%d",&N);
A1=N/1000;
reste=N%1000;
printf("le 1er chiffre est:A1");
A2=reste/100;
reste=A1%100;
printf("le 2eme chiffre est:A2");
A3=reste/10;
reste=A2%10;
printf("le 3eme chiffre est:A3");
A4=reste;
printf("le 4eme chiffre est :A4");
getch();
}
#include <stdio.h>
#include <conio.h>
main(void)
{
int N,A1,A2,A3,A4;
int reste;
int div=1000;
printf("Introduisez le nombre N : ");
scanf("%d",&N);
A1=N/1000;
reste=N%1000;
div=div/1000;
printf("1er chiffre=%d\n",A1);
A2=reste/100;
reste=A1%100;
div=div/100;
printf("2eme chiffre=%d\n",A2);
A3=reste/10;
reste=A1%10;
div=div/10;
printf("3eme chiffre=%d\n",A3);
A4=reste/1;
reste=A2%1;
div=div/1;
printf("4eme chiffre=%d\n",A4);
getch();
}
j'ai fais ce programme mais j'ai un blem dans le chifre 3 et 4
#include <conio.h>
main(void)
{
int N,A1,A2,A3,A4;
int reste;
int div=1000;
printf("Introduisez le nombre N : ");
scanf("%d",&N);
A1=N/1000;
reste=N%1000;
div=div/1000;
printf("1er chiffre=%d\n",A1);
A2=reste/100;
reste=A1%100;
div=div/100;
printf("2eme chiffre=%d\n",A2);
A3=reste/10;
reste=A1%10;
div=div/10;
printf("3eme chiffre=%d\n",A3);
A4=reste/1;
reste=A2%1;
div=div/1;
printf("4eme chiffre=%d\n",A4);
getch();
}
j'ai fais ce programme mais j'ai un blem dans le chifre 3 et 4
A1=N/1000;
reste=N%1000;
div=div/1000;
essai de faire
A1 = N/1000;
N = N%1000;
A2 = N/100;
N = N%100;
...
tu n'a pas besoin de faire une variable exprès tu peux modifier directement la valeur de ta variable N
il me semble que tu peux même faire N %= 1000 pour aller plus vite mais je ne suis plus sur (je sais que ca marche avec += et -= mais pour %= faudrait vérifier)
reste=N%1000;
div=div/1000;
essai de faire
A1 = N/1000;
N = N%1000;
A2 = N/100;
N = N%100;
...
tu n'a pas besoin de faire une variable exprès tu peux modifier directement la valeur de ta variable N
il me semble que tu peux même faire N %= 1000 pour aller plus vite mais je ne suis plus sur (je sais que ca marche avec += et -= mais pour %= faudrait vérifier)