Division par 0 en C++ avec C ++ buider

Résolu/Fermé
alcOol
Messages postés
9
Date d'inscription
jeudi 6 mars 2008
Statut
Membre
Dernière intervention
31 juillet 2008
- 2 avril 2008 à 15:50
alcOol
Messages postés
9
Date d'inscription
jeudi 6 mars 2008
Statut
Membre
Dernière intervention
31 juillet 2008
- 2 avril 2008 à 16:05
Bonjour,

Alors voila mon problème, j'ai "créé" ma propre calculatrice et j'aimerai que la division par zéro soit interdite. Mais je n'ai rien appris qui pourrait me le permettre quelqu'un pourrait t'il m'aider? Merci d'avance et bonen fin de journée.


//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include <stdio.h>
#include <stdlib.h>


#include "ufmMain.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TfmMain *fmMain;

char cMonNombre[20];
float iNombre1=0;
float iNombre2=0;
float fResultat=0;
bool bAddition = false;
bool bSoustraction = false;
bool bMultiplication = false;
bool bDivision = false;


void __fastcall TfmMain::bu8Click(TObject *Sender)
{
StrCat(cMonNombre,bu8->Caption.c_str());
edAffichage->Text= cMonNombre;
}
//---------------------------------------------------------------------------
void __fastcall TfmMain::bu9Click(TObject *Sender)
{
StrCat(cMonNombre,bu9->Caption.c_str());
edAffichage->Text= cMonNombre;
}
//---------------------------------------------------------------------------

void __fastcall TfmMain::buPlusClick(TObject *Sender)
{
bAddition=true;
sprintf(cMonNombre,edAffichage->Text.c_str());
iNombre1 = StrToInt(cMonNombre);
edAffichage->Text="";
sprintf(cMonNombre,edAffichage->Text.c_str());
}
//---------------------------------------------------------------------------

void __fastcall TfmMain::buEgalClick(TObject *Sender)
{
sprintf(cMonNombre,edAffichage->Text.c_str());
iNombre2 = StrToInt(cMonNombre);
sprintf(cMonNombre,buDeco0->Caption.c_str());

if (bAddition==true)
{
fResultat=iNombre1 + iNombre2;
edAffichage->Text = fResultat;
}

if (bSoustraction==true)
{
fResultat=iNombre1 - iNombre2;
edAffichage->Text = fResultat;
}

if (bMultiplication==true)
{
fResultat=iNombre1 * iNombre2;
edAffichage->Text = fResultat;
}

if (bDivision==true)
{
fResultat=iNombre1 / iNombre2;
edAffichage->Text = fResultat;
}


bAddition = false;
bSoustraction = false;
bMultiplication = false;
bDivision = false;

}
//---------------------------------------------------------------------------


void __fastcall TfmMain::buMoinsClick(TObject *Sender)
{
bSoustraction=true;
sprintf(cMonNombre,edAffichage->Text.c_str());
iNombre1 = StrToInt(cMonNombre);
edAffichage->Text="";
sprintf(cMonNombre,edAffichage->Text.c_str());
}
//---------------------------------------------------------------------------

void __fastcall TfmMain::buFoisClick(TObject *Sender)
{
bMultiplication=true;
sprintf(cMonNombre,edAffichage->Text.c_str());
iNombre1 = StrToInt(cMonNombre);
edAffichage->Text="";
sprintf(cMonNombre,edAffichage->Text.c_str());
}
//---------------------------------------------------------------------------

void __fastcall TfmMain::buDiviserClick(TObject *Sender)
{
bDivision=true;
sprintf(cMonNombre,edAffichage->Text.c_str());
iNombre1 = StrToInt(cMonNombre);
edAffichage->Text="";
sprintf(cMonNombre,edAffichage->Text.c_str());
}
//---------------------------------------------------------------------------


Pour les premiers nombres je ne les ais pas mis mais ils sont pareils aux derniers.

Merci d'avoir pris du temps pour me lire.

1 réponse

UaLShark
Messages postés
191
Date d'inscription
vendredi 19 mai 2006
Statut
Membre
Dernière intervention
21 juillet 2010
35
2 avril 2008 à 15:58
void __fastcall TfmMain::buEgalClick(TObject *Sender)
{ .....
....
if (bDivision==true)
{
if(iNomre2 != 0)
{fResultat=iNombre1 / iNombre2;
edAffichage->Text = fResultat;
}
else
edAffichage->Text = "Erreur Division par 0";
}
1
alcOol
Messages postés
9
Date d'inscription
jeudi 6 mars 2008
Statut
Membre
Dernière intervention
31 juillet 2008
2
2 avril 2008 à 16:05
void __fastcall TfmMain::buEgalClick(TObject *Sender)
{ .....
....
if (bDivision==true)
{
if(iNombre2 != 0)
{fResultat=iNombre1 / iNombre2;
edAffichage->Text = fResultat;
}
else
edAffichage->Text = "Erreur Division par 0";
}

merci pour ton aide
0