begin process at 2012 05 28 19:34:47
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

[Débutant ] Créer une calculatrice


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[Débutant ] Créer une calculatrice

jeudi 14 décembre 2006 à 20:53:19 | [Débutant ] Créer une calculatrice

rockerguitar

Bonsoir à tous !
Je suis nouveau dans le monde de la programmation. J'ai commencé il y a 3 jours. Mon projet est de créer un jeu musical sur la Nintendo Wii, en utilisant la Wiimote. Comme vous le voyez, je suis un amoureux des jeux vidéos ^^
J'ai 15 ans, j'habite à Marseille, et mon prénom, c'est Olivier. Voila.

J'ai voulu créer une calculatrice dans la console Win32, mais il y a une problème, je ne saurait l'expliquer, mais je vous donne mon code, pour que vous puissiez tou de même m'aider :

#include<stdio.h>

#include

<stdlib.h>

int

main( int argc, char *argv[])

{

long choixOperation;

printf(

"=== Operation ===\n\n" );

printf(

"1. Addition\n" );

printf(

"2. Soustraction\n" );

printf(

"3. Multiplication\n" );

printf(

"4. Division\n" );

printf(

"\nVotre choix ? " );

scanf(

"%ld" , &choixOperation);

printf(

"\n" );

switch (choixOperation)

{

case 1:

printf(

"Addition" );

break ;

case 2:

printf(

"Soustraction" );

break ;

case 3:

printf(

"Multiplication" );

break ;

case 4:

printf(

"Division" );

break ;

default :

printf(

"C'est pourtant pas dur de choisir entre 1, 2, 3 et 4 non ?" );

break ;

}

printf(

"\n\n" );

long resultat = 0, nombre1 = 0, nombre2 = 0;

printf(

"Entrez le nombre 1 : " );

scanf(

"%ld" , &nombre1);

printf(

"Entrez le nombre 2 : " );

scanf(

"%ld" , &nombre2);

// Et on affiche l'addition à l'écran :

if (choixOperation == 1);

{

resultat = nombre1 + nombre2;

printf (

"%ld + %ld = %ld\n" , nombre1, nombre2, resultat);

}

if (choixOperation == 2);

{

resultat = nombre1 - nombre2;

printf (

"%ld - %ld = %ld\n" , nombre1, nombre2, resultat);

}

if (choixOperation == 3);

{

resultat = nombre1 * nombre2;

printf (

"%ld * %ld = %ld\n" , nombre1, nombre2, resultat);

}

if (choixOperation == 4);

{

resultat = nombre1 / nombre2;

printf (

"%ld / %ld = %ld\n" , nombre1, nombre2, resultat);

}

system(

"PAUSE" );

}



Je programme sous Visual C++ 2005 Express. Je tiens à vous dire que ce code comporte tous les points-virgule et guillemets ou autre, simplement, il ne marche pas correctement.
Merci d'avance.

jeudi 14 décembre 2006 à 20:59:27 | Re : [Débutant ] Créer une calculatrice

rockerguitar

#include #include int main(int argc, char *argv[]) { long choixOperation; printf("=== Operation ===\n\n"); printf("1. Addition\n"); printf("2. Soustraction\n"); printf("3. Multiplication\n"); printf("4. Division\n"); printf("\nVotre choix ? "); scanf("%ld", &choixOperation); printf("\n"); switch (choixOperation) { case 1: printf("Addition"); break; case 2: printf("Soustraction"); break; case 3: printf("Multiplication"); break; case 4: printf("Division"); break; default: printf("C'est pourtant pas dur de choisir entre 1, 2, 3 et 4 non ?"); break; } printf("\n\n"); long resultat = 0, nombre1 = 0, nombre2 = 0; printf("Entrez le nombre 1 : "); scanf("%ld", &nombre1); printf("Entrez le nombre 2 : "); scanf("%ld", &nombre2); // Et on affiche l'addition à l'écran : if (choixOperation == 1); { resultat = nombre1 + nombre2; printf ("%ld + %ld = %ld\n", nombre1, nombre2, resultat); } if (choixOperation == 2); { resultat = nombre1 - nombre2; printf ("%ld - %ld = %ld\n", nombre1, nombre2, resultat); } if (choixOperation == 3); { resultat = nombre1 * nombre2; printf ("%ld * %ld = %ld\n", nombre1, nombre2, resultat); } if (choixOperation == 4); { resultat = nombre1 / nombre2; printf ("%ld / %ld = %ld\n", nombre1, nombre2, resultat); } system("PAUSE"); }
vendredi 15 décembre 2006 à 07:12:14 | Re : [Débutant ] Créer une calculatrice

Joky

Membre Club
T'as de l'ambition dis donc pour ton Projet :D
Sinon remplace ton long choixOperation par un int choixOperation voir même un short int c'est encore mieux et dans scanf tu lis un entier avec %i

Je pense que %ld attend un double, je suis pas sur...
Voilà bon courage pour la Wii :s

ULARGE_INTEGERJokyQi=QI("Joky"

vendredi 15 décembre 2006 à 08:53:34 | Re : [Débutant ] Créer une calculatrice

rockerguitar

Merci de ta réponse ! Il reste cependant un problème encore : c'est que, lorsque je lance l'application, je choisis l'opération, là ça marche, je rentre deux nombres à calculer, ça marche aussi, mais après, il me donne le résultat de l'addition, la soustraction, la multiplication et la division des nombres chosis alors que j'ai demandé par exemple une addition (ça marche si je demande les trois autres type d'opération). C'est ça que je ne comprends pas :-(. Mais merci quand même pour tes encouragements et ta réponse ;-)
vendredi 15 décembre 2006 à 12:12:17 | Re : [Débutant ] Créer une calculatrice

Ombitious_Developper

Salut:

Tu peux remplacer ton switch par des pointeurs de fonctions.
vendredi 15 décembre 2006 à 14:20:34 | Re : [Débutant ] Créer une calculatrice

turnerom

switch attend un int pas un long !!!

  int choixOperation;
  
  printf("=== Operation ===\n\n");
  printf("1. Addition\n");
  printf("2. Soustraction\n");
  printf("3. Multiplication\n");
  printf("4. Division\n");
  printf("\nVotre choix ? ");
  scanf("%d", &choixOperation);


TuRn3r
vendredi 15 décembre 2006 à 14:27:57 | Re : [Débutant ] Créer une calculatrice

turnerom

Bon allé, c'est bientot NOEL



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

float add(int a, int b)
{
   return (float) a+b;
}

float sub(int a, int b)
{
   return (float) a-b;
}

float mul(int a, int b)
{
   return (float) a*b;
}

float div(int a, int b)
{
   if(b==0)
   {
      fprintf(stderr, "Impossible de diviser par 0");
      return -999;

   return (float) a/b;
}


int main(int argc, char *argv[])
{
  int choixOperation;
  int a, b;
  float rep;
  
  printf("=== Operation ===\n\n");
  printf("1. Addition\n");
  printf("2. Soustraction\n");
  printf("3. Multiplication\n");
  printf("4. Division\n");
  printf("\nVotre choix ? ");
  scanf("%d", &choixOperation);
  
  printf("\n");
 
printf("Saisissez 2 nombres");
scanf("%d %d", &a, &b);

  switch (choixOperation)
  {
    case 1:
       printf("Addition");
       rep=add(a,b);
       break;
    case 2:
       printf("Soustraction");
       rep=sub(a,b);
       break;
    case 3:
       printf("Multiplication");
       rep=mul(a,b);
       break;
    case 4:
       printf("Division");
       rep=div(a,b);
       break;
    default:
       printf("C'est pourtant pas dur de choisir entre 1, 2, 3 et 4 non ?");
       break;
  }
  
  printf("\n\n");

printf("Le resultat est %f", rep);

return 0;
}
 

TuRn3r
vendredi 15 décembre 2006 à 14:29:02 | Re : [Débutant ] Créer une calculatrice

turnerom

Avec une } apres return -999;
ca devrai marché un poil mieu



TuRn3r
vendredi 15 décembre 2006 à 15:37:22 | Re : [Débutant ] Créer une calculatrice

Ombitious_Developper

Salut:

Tu n'a pas compris ce que je voulais dire:

// Tableau de pointeurs de fonctions
float (*ptr) (int, int) [4] = {add, sub, mul, div};



if (choixOperation >= 0 && choixOperation <= 3)
    ptr (a, b);
else
    printf("choix invalide \a\n");

vendredi 15 décembre 2006 à 16:00:47 | Re : [Débutant ] Créer une calculatrice

turnerom

Si j'ai bien compris, mais je trouve juste ma méthode un peu plus simple pour débuter en prog.

M'enfin c'est vrai qu'avant d'attaquer la prog d'un jeu Wii ......



TuRn3r

1 2 3

Cette discussion est classée dans : printf, resultat, ld, nombre2, nombre1


Répondre à ce message

Sujets en rapport avec ce message

Calculatrice C en mode console [ par ptiniko ] Bonjour ou bonsoir, c'est selon.Voilà, je suis, comme qui dirait, débutant dans l'apprentissage du C/C++. Et j'ai un problème (nan sans blague?).En fa Calculatrice [ par sarazin66 ] Voila ma calculatrice , je cherche pleins de critique pour l'améliorer =D [^^langue3] voici ma source: [code=cpp][/code]#include #include #include CalculatriceC [ par florent175 ] Bonjour, Je voudrais avoir un avis sur mon... tous premier programme qui marche.[^^happy13] Il est programmer en C et il est très simple.[^^happy17] prob de virgule pour disision [ par stefbuet ] oui je sais c tt c** mais j'ai un trou de mémoire, car j'ai arrété le C pendant un pti moment et donc je me souvien plus trop d'un truc :pour faire l' Code qui ne marche pas [ par darkwhite ] Salut a tous . Je suis debutant en C et j'ai commencé un programme qui converti un nombre binaire de huit chiffres en un nombres decimal le code est [C++] Fenetre Bloquer lors de la recuperation de packets sous WinPcap [ par chris5 ] Bonjour a tous, je suis débutant amateur en programmation c++ et j'ai actullement un probleme avec WinPcap : Je n'arrive pas a faire de lecture de pac ou est le problème ? [ par baby3378 ] bonjour, Voila j'ai construit un prog qui permet d'avoir le PGCD de 2 nombres, tous se passe bien jusqu'a ce que windows me di que le programme a renc bitmap dans une fenetre DOS [ par chinois57 ] je voudrai ajouter une image dans mon programme est ce possible#include #include intmain(){   system ("MODE CON: cols=70 lines=40");   system ("TITLE aide [ par chinois57 ] comment faire fair ce prog dans une fenetre windows application#include #include intmain(){   system ("MODE CON: cols=70 lines=40");   system ("TITL probleme avec les if et else [ par alexfr34 ] alexfr34 Bonjour, j'ai perdu le fil avec le chat je ne comprends pas trop le mode d'emploi quelqu'un


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,889 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales