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 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
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
Rejoignez-nous