Additionner,Soustraire,Multiplier et diviser

Résolu
cs_v1
Messages postés
9
Date d'inscription
jeudi 22 janvier 2004
Statut
Membre
Dernière intervention
28 novembre 2005
- 27 nov. 2005 à 13:03
LUDINSKI
Messages postés
441
Date d'inscription
mardi 2 décembre 2003
Statut
Membre
Dernière intervention
22 mai 2012
- 29 nov. 2005 à 09:15
Salut à tous, voici ma question:
Dans le code suivant, il faut choisir entre additionner, soustraire, multiplier et diviser. Quelqu'un peut-il m'aider à réorganiser le code pour que dans chaque Case de Switch je ne sois pas obligé de retaper la portion concernant la saisie du premier et du deuxième nombre (en italique souligné dans le code), puisqu'à chaque fois c'est la même chose. Je suis vraiment novice, alors soyez indulgent et aidez-moi !


using System
;


namespace Operators


{


/// <summary>


/// Effectue des multiplications additions divisions soustractions


/// </summary>


public class Class1



{


public static void Main(string[] args
)


{ // Demande le type d'opération à effectuer :


// 1 pour additionner


// 2 pour multiplier


// 3 pour diviser


// 4 pour soustraire


Console
.WriteLine("Type d'opération à effectuer :");


Console
.WriteLine(); // Saut de ligne


Console
.WriteLine("1-Addition");


Console
.WriteLine("2-Multiplication");


Console
.WriteLine("3-Division");


Console
.WriteLine("4-Soustraction");


Console
.WriteLine(); // Saut de ligne


Console
.WriteLine("Choisissez le numéro correspondant à l'opération que vous souhaitez faire : ");


string sMyChoice
= Console
. ReadLine ();


// Convertit ce qui a été saisi en un entier


int nMyChoice
= Convert
.ToInt32(sMyChoice
);


string sFirstNbr
;


string sSecondNbr
;


decimal mFirstNbr
;


decimal mSecondNbr
;


decimal mResult
;


switch(nMyChoice
)


{


case 1:



//Demande le premier nombre


Console.Write("Entrez le premier nombre : " );


sFirstNbr = Console
.ReadLine
();


// Convertit ce qui a été saisi en un decimal


mFirstNbr = Convert
.ToDecimal(sFirstNbr
);





//Demande le second nombre


Console.Write("Entrez le deuxième nombre : " );


sSecondNbr = Console
.ReadLine
();


//Convertit ce qui a été saisi en un decimal


mSecondNbr = Convert
.ToDecimal(sSecondNbr
);


// Additionne le premier et le deuxième nombre


mResult
= mFirstNbr
+ mSecondNbr
;


// Affiche le résultat


Console
. WriteLine (); // Saute une ligne


Console
.WriteLine(mFirstNbr
+ " plus " + mSecondNbr
+ " est égal à " + mResult
);


break;


case 2:



//Demande le premier nombre


Console
.Write("Entrez le premier nombre : ");


sFirstNbr
= Console
.ReadLine();


// Convertit ce qui a été saisi en un decimal


mFirstNbr
= Convert
. ToDecimal (sFirstNbr
);


//Demande le second nombre


Console
.Write("Entrez le deuxième nombre : ");


sSecondNbr
= Console
.ReadLine();


//Convertit ce qui a été saisi en un decimal


mSecondNbr
= Convert
. ToDecimal (sSecondNbr
);


// Multiplie le premier et le deuxième nombre


mResult
= mFirstNbr
* mSecondNbr
;


// Affiche le résultat


Console
.WriteLine(); // Saute une ligne


Console
.WriteLine(mFirstNbr
+ " multiplié par " + mSecondNbr
+ " est égal à " + mResult
);


break;


case 3:



//Demande le premier nombre


Console
.Write("Entrez le premier nombre : ");


sFirstNbr
= Console
. ReadLine ();


// Convertit ce qui a été saisi en un decimal


mFirstNbr
= Convert
.ToDecimal(sFirstNbr
);


//Demande le second nombre


Console
.Write("Entrez le deuxième nombre : ");


sSecondNbr
= Console
. ReadLine ();


//Convertit ce qui a été saisi en un decimal


mSecondNbr
= Convert
.ToDecimal(sSecondNbr
);


// Divise le premier et le deuxième nombre


mResult
= mFirstNbr
/ mSecondNbr
;


// Affiche le résultat


Console
. WriteLine (); // Saute une ligne


Console
.WriteLine(mFirstNbr
+ " divisé par " + mSecondNbr
+ " est égal à " + mResult
);


break;


case 4:



//Demande le premier nombre


Console
.Write("Entrez le premier nombre : ");


sFirstNbr
= Console
.ReadLine();


// Convertit ce qui a été saisi en un decimal


mFirstNbr
= Convert
. ToDecimal (sFirstNbr
);


//Demande le second nombre


Console
.Write("Entrez le deuxième nombre : ");


sSecondNbr
= Console
.ReadLine();


//Convertit ce qui a été saisi en un decimal


mSecondNbr
= Convert
. ToDecimal (sSecondNbr
);


// Divise le premier et le deuxième nombre


mResult
= mFirstNbr
- mSecondNbr
;


// Affiche le résultat


Console
.WriteLine(); // Saute une ligne


Console
.WriteLine(mFirstNbr
+ " moins " + mSecondNbr
+ " est égal à " + mResult
);


break;


default:


Console
.WriteLine("Vous devez saisir un nombre compris entre 1 et 4, Veuillez recommencer.");


Console
.WriteLine(); // Saute une ligne


break;


}


}


}


}

5 réponses

cs_coq
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
2 août 2014
99
27 nov. 2005 à 14:41
Salut,

Une méthode ?
private decimal GetNumber(string question)
{
Console.Write(question);
string sNb = Console.ReadLine();
// Convertit ce qui a été saisi en un decimal
return Convert.ToDecimal(sNb);
}

Appel :
//Demande le premier nombre
mFirstNbr = this.GetNumber("Entrez le premier nombre : ");
//Demande le second nombre
mSecondNbr = this.GetNumber("Entrez le deuxième nombre : ");

/*
coq
MVP Visual C#
*/
3