prob getchar

prob getchar - C - Programmation

Marsh Posté le 08-12-2005 à 09:16:21    

Bonjour !
Voilà j'ai un léger soucis avec l'utilisation des getchar() !
Lors de l'affichage en fin de mon programme, je demande donc si l'utilisateur veut revisionner l'affichage et ensuite réexécuter le programme !
Je n'ai pas de saisie pour la première question qui est revesionner l'affichage !
Mon(mes) erreur(s) ?
 
 

Citation :


/*  Ecrire un programme qui transforme les km en miles par pas de 5 km (1 mile = +/- 1609 mètres).
  Procéder de la manière suivante :
  - demander à l'utilisateur d'entrer le nombre de conversions qu'il désire effectuer (obligatoirement un multiple de 10);
  - afficher une série de 10 conversions (centrées) et demander de taper une touche pour afficher la page suivante;
  - proposer de relancer la série d'affichages;
  - proposer de réexecuter le programme entier.
*/
 
#include<stdio.h>
#include<conio.h>
 
main(){
 
int km,flag,i;
char repeat,aff;
 
repeat='o';
while(repeat=='o'){
 
 flag=0;
 while(!flag){
    clrscr();
  printf("Nombre de conversions (multiple de 10) : " );
  scanf("%d",&km);
    if(km%10 == 0) flag=1;
 }
 
   aff='o';
   while(aff=='o'){
  clrscr();
  i=1;
  do{
     i++;
   printf("%d ",(i*5)*1609);
     if(i%10 == 0){
    if(i==km){
     printf("\n\n > Voulez-vous revisionner les conversions (n/o) ?! " );
           aff=getchar();
        }else{
       printf("\n\n< Appuyer sur une touche pour poursuivre l'affichage >" );
         getch();
      clrscr();
        }
     }
  }while(i<km);
   }
 
 
   printf("\n\n > Voulez-vous reexecuter le programme (n/o) ?! " );
   repeat=getchar();
}
 
}


 
merci !

Reply

Marsh Posté le 08-12-2005 à 09:16:21   

Reply

Marsh Posté le 08-12-2005 à 09:31:05    

_jtcorp a écrit :

Voilà j'ai un léger soucis avec l'utilisation des getchar() !


Mauvais choix de fonction.
 
http://mapage.noos.fr/emdel/notes.htm#saisie
http://mapage.noos.fr/emdel/notes.htm#fichiers
 
Merci de lire les regles du forum et d'encadrer ton code des balises [fixed ] ou [cpp ].
 
Sécurisation, stabilisation. Le code manquant est ici :  
 
http://mapage.noos.fr/emdel/clib.htm
 


#include"ed/inc/io.h"
 
#include<stdio.h>
#include<stdlib.h>
 
#define clrscr()
 
static int get_i (void)
{
   long n;
 
   get_l (&n);
 
   return (int) n;
}
 
int main (void)
{
   int km, flag, i;
   int repeat, aff;
 
   repeat = 'o';
 
   while (repeat == 'o')
   {
      flag = 0;
      while (!flag)
      {
         clrscr ();
         printf ("Nombre de conversions (multiple de 10) : " );
         km = get_i ();
         if (km != 0 && km % 10 == 0)
         {
            flag = 1;
         }
      }
 
      aff = 'o';
      while (aff == 'o')
      {
         clrscr ();
         i = 1;
         do
         {
            i++;
            printf ("%d ", (i * 5) * 1609);
            if (i % 10 == 0)
            {
               if (i == km)
               {
                  printf ("\n\n > Voulez-vous revisionner les conversions (n/o) ?! " );
                  aff = get_c ();
               }
               else
               {
                  printf ("\n\n< Appuyer sur une touche pour poursuivre l'affichage >" );
                  get_c ();
                  clrscr ();
               }
            }
         }
         while (i < km);
      }
 
      printf ("\n\n > Voulez-vous reexecuter le programme (n/o) ?! " );
      repeat = get_c ();
   }
   return 0;
}


Message édité par Emmanuel Delahaye le 08-12-2005 à 09:44:23

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed