Rechercher : dans
Par :

Langage c problème avec un exercice

Dernière réponse le 24 jun 2008 à 19:46:58 ben, le 15 oct 2007 à 15:32:22 
 Signaler ce message aux modérateurs

Bonjour
un utilisateur doit encoder deux nombre et un opérateur et le programme fait le calcul correspondant au moyen des deux valeurs donnée voici le début de mon programme mais après je suis bloqué!
#include <stdlib.h>
#include <stdio.h>

void main (void)
{
int a,b,c;
printf("entrez premiere valeur:");
scanf("%d",&a);
printf("entrez deuxieme valeur:");
scanf("%d";&b);
printf("entrez operateur");
scanf("%d",&c);

/* 1=addition;
2=soustraction;
3=multiplication;
4=division; */

if ( c=1)
{

Configuration: Windows XP
Internet Explorer 6.0

Meilleures réponses pour « langage c problème avec un exercice » dans :
Les piles en langage C VoirLes piles Requis I. INTRODUCTION II. Définition III. La construction du prototype d'un élément de la pile IV. Opérations sur les piles A. Initialisation B. Insertion d'un élément dans la pile C. Ôter un élément de la pile D. Affichage...
Langage C++ - Les types de données VoirLes types de données Les données manipulées en langage C++, comme en langage C, sont typées, c'est-à-dire que pour chaque donnée que l'on utilise (dans les variables par exemple) il faut préciser le type de donnée, ce qui permet de connaître...
Langage C - Les types de données VoirLes types de données Les données manipulées en langage C sont typées, c'est-à-dire que pour chaque donnée que l'on utilise (dans les variables par exemple) il faut préciser le type de donnée, ce qui permet de connaître l'occupation mémoire (le...
Langage C - Les chaînes de caractères VoirQu'est-ce qu'une chaîne de caractères ? Une chaîne de caractères (appelée string en anglais) est une suite de caractères, c'est-à-dire un ensemble de symboles faisant partie du jeu de caractères, défini par le code ASCII. En langage C, une chaîne...

1

mamiemando, le 15 oct 2007 à 19:10:03

Voilà ce que tu peux faire :

#include <stdio.h>

int main(){
    int x,y,res;
    char c;

    // Lire les valeurs
    printf("operateur (+,-,*,/) ? ");
    c = getchar();
    printf("x ? ");
    scanf("%d",&x);
    printf("y ? ");
    scanf("%d",&y);

    // Calculer le résultat
    if     (c == '*') res = x * y;
    else if(c == '+') res = x + y;
    else if(c == '-') res = x - y;
    else if(c == '/') res = x / y;
    else{
        fprintf(stderr,"opérateur [%c] invalide !\n",c);
        return 1;
    }

    // Afficher le résultat
    printf("%d %c %d = %d\n",x,c,y,res);
    return 0;
}

Je te laisse adapter le programme pour que ça marche avec deux flottants. Si tu ne comprends pas certains points n'hésite pas à dire lesquels.

Bonne chance

Répondre à mamiemando

2

ben, le 16 oct 2007 à 09:20:08

Merci pour cet énoncé mais je n'ai pas encore appris les caractère et char, je dois utiliser des nombre!

Répondre à ben

3

mamiemando, le 16 oct 2007 à 10:08:43
  • +3

Ouais mais bon normalement ce n'est pas à moi de faire tes exercices mon grand... Donc il faut quand même que tu cherches un minimum sinon ça va se voir. En plus dire "je ne l'ai pas vu en cours" ce n'est pas une vraie réponse car si tu adoptes ce genre de raisonnement en stage ou par la suite dans ton travail tu ne vas pas aller loin...

Bonne chance

Répondre à mamiemando

4

spidag, le 16 oct 2007 à 10:50:24
  • +1

Bonjour,

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

int main ()
{
int a,b,c;
float res;
printf("entrez premiere valeur:");
scanf("%d",&a);
printf("entrez deuxieme valeur:");
scanf("%d";&b);
printf("entrez operateur");
scanf("%d",&c);

/* 1=addition;
2=soustraction;
3=multiplication;
4=division; */
if (c==1) res=a+b;
else if (c==2) res=a-b;
else if (c==3) res=a*b;
else if (c==4) res=a/b;
else {
printf("Erreur de saisie");
return (0);
}
printf("resultat : %f",res);
}

Répondre à spidag

9

mariam, le 22 jun 2008 à 16:15:15

Bjr
ma question es la suivante : manque _t_ il pas des accolades entre le if et le else ?? !!!

Répondre à mariam

5

mamiemando, le 16 oct 2007 à 19:18:27
  • +2

Il manque le return 0; à la fin du main; et return n'est pas une fonction (mais une instruction) donc il n'y a pas de raison de mettre de parenthèse autour du 0 de return (0). Par ailleurs je trouve un peu anti pédagogique de lui donner la solution de son exercice (j'en avais à mon sens déjà beaucoup trop fait).

Répondre à mamiemando

6

iki, le 24 déc 2007 à 22:13:37

Bsr, je debute en langage c , et j'ai un petit exo ou il faut utiliser des pointeurs, il s'agit de supprimer les occurrences des nombres multiples dans un tableau en tassant les elements restants .

expl

Tab1={10,12,15,10,6,12,5} le resultat est Tab1={10,12,15,6,5}

merci d'avance.

Répondre à iki

10

gigaga, le 22 jun 2008 à 17:47:25
  • +1

C'est dingue tous ceux qui veulent que les gens résolvent leur exercice à leur place!!

Répondre à gigaga

11

 mamiemando, le 24 jun 2008 à 19:46:58

C'est vrai, et dans des sujets résolus et qui n'ont rien a voir :-)

Répondre à mamiemando
Collection CommentÇaMarche.net