Programme en C...

Fermé
sbix Messages postés 16 Date d'inscription dimanche 13 mai 2007 Statut Membre Dernière intervention 7 novembre 2007 - 2 nov. 2007 à 21:20
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 - 7 nov. 2007 à 21:49
Bonjour,j'ai un problem avec la compilation d'une source assez petite qui fai un tou simple calcul...voilà la source :
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
long a, b, x;
printf("a : ");
scanf("%ld", &a);
printf("b : ");
scanf("%ld", &b);
b / a = x;
printf ("%ld / %ld = %ld\n", b, a, x);

system("PAUSE");
return 0;
}
j'arrive pas a le faire marcher(c moi qui la ecrit) et oui je sai que je suis debutant dans le language C . merci de votre aide

13 réponses

mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 436
2 nov. 2007 à 21:23
c'est quoi le message d'erreur du compilateur ?
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
2 nov. 2007 à 21:37
Salut,
b / a = x;
la partie gauche doit être une lvalue.
c'est toi c'est une expression
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
        long a, b, x;
        printf("a : ");
        scanf("%ld", &a);
        printf("b : ");
        scanf("%ld", &b);
        x = b / a;
        printf ("%ld / %ld = %ld\n", b, a, x);

        system("PAUSE");
        return 0;
}
0
sbix Messages postés 16 Date d'inscription dimanche 13 mai 2007 Statut Membre Dernière intervention 7 novembre 2007 10
2 nov. 2007 à 21:46
sa ne marche pas,jy avait deja penser a cette solution MR.lami20j ,mais sa ne marche pas.... :s
0
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 436
2 nov. 2007 à 21:48
le programme a l'air correct donc essaye avec un autre compilateur
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
2 nov. 2007 à 21:52
sa ne marche pas,jy avait deja penser a cette solution MR.lami20j ,mais sa ne marche pas.... :s
ben, chez moi ça marche (j'ai commenté system("PAUSE") puisque je suis sous GNU/Linux
lami20j@debian:~/trash$ cat ccm.c
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
        long a, b, x;
        printf("a : ");
        scanf("%ld", &a);
        printf("b : ");
        scanf("%ld", &b);
        x = b / a;
        printf ("%ld / %ld = %ld\n", b, a, x);

//      system("PAUSE");
        return 0;
}

La compilation et le résultat
lami20j@debian:~/trash$ gcc ccm.c
lami20j@debian:~/trash$ ./a.out
a : 4
b : 80
80 / 4 = 20
0
sbix Messages postés 16 Date d'inscription dimanche 13 mai 2007 Statut Membre Dernière intervention 7 novembre 2007 10
2 nov. 2007 à 22:07
ta source marche parfaitement(j'ai enlever le commentaire de system("pause") psk je suis sous winmerde) je n'arrive pas a trouver la diference entre ma source et la tienne,pourtant la tienne marche contrairement a la mienne... tu peut m'aider a comprendre stp ?
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
2 nov. 2007 à 22:15
affiche les messages que tu as à la compilation
0
sbix Messages postés 16 Date d'inscription dimanche 13 mai 2007 Statut Membre Dernière intervention 7 novembre 2007 10
2 nov. 2007 à 22:24
woups,je m'exuse sa vient juste de marcher, lol je sai pas pk,mais ma source vient de marcher aussi sans que je la modifie...merci de ton aide precieuse lami20j je te serai reconnaissant si tu me file ton adresse msn, ou que si tu m'ajoute => stone-_-cold@hotmail.fr ,je veut programmer un logiciel un peut compliquer pour un debutant donc j'aurai besoin de l'aide ;) s'il te plait =)
0
sbix Messages postés 16 Date d'inscription dimanche 13 mai 2007 Statut Membre Dernière intervention 7 novembre 2007 10
3 nov. 2007 à 14:53
j'ai encore un problem :s :

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
long a, b, x;

printf(" :/*/*/*/: ax=b :/*/*/*/:\n\n\n");
while (1)
{
printf("a : ");
scanf("%ld", &a);
printf("b : ");
scanf("%ld", &b);
if (a != 0)
{
x = b /a;
printf ("%ld = %ld / %ld\n", x, b, a);
printf("S = %ld \n\n\n\n\n",x);
}
else (a == 0)
{
if (b == 0 )
{
printf("0.x=0\nS = R\n\n");
}
else
{
printf("X = 0\nS = equation impossible");
}
}
}
system("PAUSE");
return 0;
}

pouriez vous m'aider SVP ?
0
SmallFitz Messages postés 351 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 21 juin 2013 185
3 nov. 2007 à 15:03
Salut !
C'est quoi le message d'erreur ?
C'est toujours pareil, a chaque fois que tu poses ton code et qu'il y a un souci, dis où est le problème.

EDIT :
Ce n'est pas else qu'il faut mettre. Ou alors tu mets rien derrière ce qui serait plus logique.
Ta boucle est infinie.
J'ai compilé, lu les messages d'erreurs.
En faisant comme ça tu résouts ton problème en 2 sec.
C'est que tu as essayé de faire ?
Dis ce que tu piges pas.
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
3 nov. 2007 à 15:29
Salut,

il faut penser à mettre une condition d'arrêt pour ta boucle while ;-)
Essaie ça
#include <stdio.h>
#include <stdlib.h>

int
main (int argc, char *argv[])
{
  long a, b, x;

  printf (" :/*/*/*/: ax=b :/*/*/*/:\n\n\n");
  while (1){
    printf ("a : ");
    scanf ("%ld", &a);
    printf ("b : ");
    scanf ("%ld", &b);
    if (a != 0){
      x = b / a;
      printf ("%ld = %ld / %ld\n", x, b, a);
      printf ("S = %ld \n\n\n\n\n", x);
    } else
        if (b == 0){
          printf ("0.x=0\nS = R\n\n___RECOMMENCER___\n");
        }else {
          printf ("X = 0\n!*****S = equation impossible*****!\n");
          return -1;
        }
  }
  system ("PAUSE");
  return 0;
}
0
sbix Messages postés 16 Date d'inscription dimanche 13 mai 2007 Statut Membre Dernière intervention 7 novembre 2007 10
7 nov. 2007 à 20:56
le problem se pose quand je compiole et je donne a "a" la valeur 0 !
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
7 nov. 2007 à 21:49
ben, chez moi ça marche
0