Dev c++ Problem avec system("pause") [Fermé]

Signaler
Messages postés
11
Date d'inscription
dimanche 7 novembre 2004
Statut
Membre
Dernière intervention
19 novembre 2004
-
 adilsoufi -
Salut à tous, c'est encore moi,
Je continu de programer sur dev c++ et j'ai un probleme, j'arive pas à compiler parce que le programe me trouve une erreur à la ligne :

system("pause")

du program:

#include <stdio.h>

int main(void)
{
int N,d,q,r;
printf("N=");
scanf("%d",&N);
r=1;
q<d;
if(N>3)
{
d=1;
do
{
d=d+1;
q=N/d;
r=N%d;
}
while ((q>=d)&&(r!=0));
}
printf("le nombre %d est",N);
if(r==0)printf(" n'est pas");
else printf(" est");
printf(" premier.\n");
system("pause"); <--
return 0;
}

alore qu'il ne semble pas y en avoire....
J'ai l'impression que c'est le programe qui bug parce qu'en retestant un precedant program validé just, il me trouve la même faute (qu'il n'avai pas trouver auparavent).
Que fair??
Merci
A voir également:

10 réponses

Messages postés
161
Date d'inscription
vendredi 14 novembre 2003
Statut
Membre
Dernière intervention
22 décembre 2009
109
Bonjour

C'est sans doute ton include qui n'est pas bon. Moi pour mon appli la plus simple, j'ai :

#include <iostream>
#include <stdlib.h>

essaie de les rajouter au début.

Jean-Rodolphe Letertre
13
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 79250 internautes nous ont dit merci ce mois-ci

Messages postés
488
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
15 mars 2009
156
faire des printf et des scanf sans stdio.h ?
ce n'est pas possible! désolé MoiCJarod, mais iostream.h c'est pour
cin et cout
cordialement
¤
#include <iostream>
#include <stdlib.h>
#include <stdio.h>

int main(void)
{
int N,d,q,r;
printf("N=");
scanf("%d",&N);
r=1;
q<d;
if(N>3)
{
d=1;
do
{
d=d+1;
q=N/d;

r=N%d;
}
while ((q>=d)&&(r!=0));
}
printf("le nombre %d est",N);
if(r==0)printf(" n'est pas");
else printf(" est");
printf(" premier.\n");
system("PAUSE");
} ILFAUTQUETUECRI PAUSE EN MA G
Messages postés
161
Date d'inscription
vendredi 14 novembre 2003
Statut
Membre
Dernière intervention
22 décembre 2009
109
Bonjour

Je ne dis pas d'enlever stdio.h ! mais de rajouter les deux lignes que j'ai donné plus haut.

Jean-Rodolphe Letertre

Moi j'aimerais ajouter une instruction qui éteint le programme mais comment faire???
Messages postés
488
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
15 mars 2009
156
toutes mes excuses.
on peut rajouter iostream sans problème
ça évite de se poser la question (C? C++?).
¤
Messages postés
29238
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
27 mars 2020
6 812
Alors pour la pause :
#include <stdio.h>

int main(){
  printf("plop !\n");
  getchar();
  return 0;
}

Et pour éteindre le programme il faut utiliser la fonction exit si c'est en dehors du main, et return si tu es dans le main. Le plus propre c'est de ne jamais faire de exit histoire que tout soit bien contrôlé par le main. Il faut juste que tes fonctions quand elles ont un problème retournent un code d'erreur. A noter qu'en C le retour de la fonction main vaut 0 si tout va bien et le code d'erreur sinon.
#include <stdio.h>

// retourne 0 si erreur, 1 si tout va bien
int f(int x){
  if(x==69){
    printf("problème !!\n");
    return 0; // :-(
  }
  printf("ok\n");
  return 1; // :-)
}

int main(){
  int x=1,y=2,z=69;
  if(f(x) == 0){
    printf("j'ai eu un problème avec x=%d\n",x);
    return 1;
  }
  if(f(y) == 0){
    printf("j'ai eu un problème avec y=%d\n",y);
    return 2;
  }
  if(f(z) == 0){
    printf("j'ai eu un problème avec z=%d\n",z);
    return 3;
  }
  return 0;
}


Bonne chance
On aime pas avoir plusieurs return dans une même fonction. Le mieux étant alors de faire un return variable ...
Bref, 6 ans après!
Mais c'est pour les prochains, qui en "googlant", tomberont ici.
Merci de la part d'un "prochain". ;)
Messages postés
11
Date d'inscription
dimanche 7 novembre 2004
Statut
Membre
Dernière intervention
19 novembre 2004
2
bonsoir,
Avec ton include, le problem sytem("pause") disparait mais maintenant c'est :

printf("N=");

et

scanf("%d",&N);

qui son considéré comme faux...
Messages postés
11
Date d'inscription
dimanche 7 novembre 2004
Statut
Membre
Dernière intervention
19 novembre 2004
2
bonsoir,
Avec ton include, le problem sytem("pause") disparait mais maintenant c'est :

printf("N=");

et

scanf("%d",&N);

qui son considéré comme faux...
Messages postés
611
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
24 juin 2016
37
bon alors pour système pause et autre c'est la lib stdlib.h en c et pour le cpp cstdlib
exemple plus simple
#include <cstdio>

#include <cstdlib>

int main(void){
printf("mise en pause\n");
system("PAUSE"); //Attention utilisation de système diffère des OS
printf("suite des instruction\n");
}

Autres exemple (unix/linux par exemple)
#include  <cstdio>

#include <cstdlib>

int main(void){
while (something) {
int ret = system("foo");
if (WIFSIGNALED(ret) &&(WTERMSIG(ret) == SIGINT || WTERMSIG(ret)==SIGQUIT))
break;
}
}