#pragma argsused
void functionA(int a,int b);
void main(void)
{
int clavier;
int clavier2;
cout<<"Saisissez le nombre de depart : ";
clavier=getchar();//on stock dans la variable clavier le nombre de debut
cout<<"Saisissez maintenant le nombre de fin : ";
clavier2=getchar(); //on stock dans la variable clavier2 le nombre de fin
functionA(clavier,clavier2);
while (!kbhit()); //attendre la saisie de l'utilisateur avant de quitter
}
void functionA(int a,int b)
{
while (a<b) { //tant que a est inférieur à b
a++; //on incremente a
printf("%c\n",a);
}
}
//---------------------------------------------------------------------------
le probleme c'est pas la compilation car le programme marche parfaitement. le bleme c'est que une foit qu'il ma demander le nombre de depart c'est bon je rentre 66 par exemple apres il me demande le nombre de fin et la paf! je rentre 1 seul chiffre et le prog se ferme auto. Se qui est byzare c que quand je met getch(); getch(); a la place de getchar() sa marche parfais met sa attend pas que je finisse mon nombre se qui fais qu'en premier nombre je peux mettre que 123456789 et en 2em nombre 123456789 mais au moins si je met 1 en premier nombre puis 9 en 2em nombre sa marque bien 123456789 alors ya 2 possibilité sois on peut faire en sorte que getch() attend que je termie mon nombre au lieu de n'accepter que 1 seul nombre ou sois on fais marcher ce getchar qui lui attend bien la fin de ma saisie mais marche pas ... MERCCI d'avance :) :clown)
cs_ToM50
Messages postés1Date d'inscriptionmardi 28 janvier 2003StatutMembreDernière intervention 7 février 2003 7 févr. 2003 à 00:14
Salut,
Voila le code corrigé et compilé sous c++ builder sans problemes. Je serais toi je mettrait en place un systeme qui detecte si lutilisateur a saisi un nombre de fin plus petit que le nombre du debut :P
void main(void)
{
int clavier;
int clavier2;
cout<<"Saisissez le nombre de depart : ";
cin>>clavier;
cout<<"Saisissez maintenant le nombre de fin : ";
cin>>clavier2;
functionA(clavier,clavier2);
while (!kbhit()); //attendre la saisie de l'utilisateur avant de quitter
}
void functionA(int a,int b)
{
while (a<b) { //tant que a est inférieur à b
a++; //on incremente a
printf("%d\r\n",a);
}
}
//---------------------------------------------------------------------------
MichelAliasMiB
Messages postés19Date d'inscriptionlundi 27 janvier 2003StatutMembreDernière intervention24 février 2003 11 févr. 2003 à 19:51
Bonjour,
Info complémentaires ...
Je débute aussi en C et j'avais un exercice à faire
et dans cet exercice, je devais capturer les touches
au clavier et contrôler les entrées de façon à ne
faire apparaître à l'écran que les caractères valide,
soit les lettres majuscules dans ce cas-ci.
Par conséquent la fonction getch() capture le clavier
avant même que la touche ne soit affiché, c'est
pourquoi ton programme n'attends pas la fin du
nombre quand tu utilise getch().
Par opposition, getchar() attends le caractère de
fin de ligne avant de capturer la saisie au clavier.
Donc getch() capture un caractère à la fois ...
et getchar() capture une série de touches incluant
le caractère de fin de ligne EOL ou <enter>.