Surcharge des Opérateurs [Résolu]

Messages postés
82
Date d'inscription
dimanche 25 janvier 2009
Dernière intervention
24 novembre 2012
- 17 juil. 2011 à 16:19 - Dernière réponse :
Messages postés
14231
Date d'inscription
lundi 11 juillet 2005
Dernière intervention
19 novembre 2018
- 18 juil. 2011 à 16:48
Bonjour,

S'il vous plait je voudrai modifier mon code de telle sorte que je puisse saisir à la main les deux chiffres complexe et non pas qu'ils soient donnés dans le code comme cette exemple

voici mon code :
public class Complexe
    {

           public int real;
           public int imaginary;
           public Complexe( int Myreal, int Myimaginary)
           {
               real = Myreal;
               imaginary = Myimaginary;
           }
           
           
            public static Complexe operator +(Complexe c1, Complexe c2)
            {
                return new Complexe(c1.real + c2.real, c1.imaginary + c2.imaginary);
            }

            //Overrride the methode TOString to display Format Complexe
            public override string ToString()
            {
                return (string.Format("{0}+{1}i", real, imaginary));
            }

            static void Main(string[] args)
            {
               
                Complexe num1 = new Complexe(3,1);
                Complexe num2 = new Complexe(2,8);
                Complexe sum = num1 + num2;
                //Add two complexe Object num 1 et num 2
                Console.WriteLine();
                Console.WriteLine("the first number is {0}", num1);
                Console.ReadLine();
                Console.WriteLine("the Seconde number is {0}", num2);
                Console.ReadLine();
                Console.WriteLine("the sum of two numbers is {0}", sum);
                Console.ReadLine();
            }
       
    }

Merci pour votre aide en avance
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
12267
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 novembre 2018
- 17 juil. 2011 à 17:51
3
Merci
Bonjour

modifie ton Main
            static void Main(string[] args)
            {
               
                //Complexe num1 = new Complexe(3,1);
                Console.WriteLine("Saisir la partie réelle");
                int N =  Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("Saisir la partie complexe");
                int N2 =  Convert.ToInt32(Console.ReadLine());
                Complexe num1 = new Complexe(N,N2);

                Complexe num2 = new Complexe(2,8);
                Complexe sum = num1 + num2;
                //Add two complexe Object num 1 et num 2
                Console.WriteLine();
                Console.WriteLine("the first number is {0}", num1);
                Console.ReadLine();
                Console.WriteLine("the Seconde number is {0}", num2);
                Console.ReadLine();
                Console.WriteLine("the sum of two numbers is {0}", sum);
                Console.ReadLine();
            }



Whismeril

Merci Whismeril 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de Whismeril
Messages postés
835
Date d'inscription
samedi 15 novembre 2008
Dernière intervention
14 janvier 2017
- 17 juil. 2011 à 18:53
0
Merci
Bonjour,

ou encore :
Complexe num1=null;
Complexe num2=null;

do
{
try
{
Console.WriteLine("Entrez le " + (num1 == null ? "premier" : "second") + " nombre complexe (reel,complexe)");
string inputString=Console.ReadLine();
//sortie
if (inputString == "") return;

string[] elements = inputString.Split(',');
if (elements.Length == 2)
{
if (num1==null)
num1 = new Complexe(int.Parse(elements[0], CultureInfo.InvariantCulture), int.Parse(elements[1], CultureInfo.InvariantCulture));
else
num2 = new Complexe(int.Parse(elements[0], CultureInfo.InvariantCulture), int.Parse(elements[1], CultureInfo.InvariantCulture));
}
else
Console.WriteLine("Erreur de saisie");
}
catch
{
Console.WriteLine("Erreur dans le format saisi");
}
} while (num1 null || num2 null);

Bob.
C# is amazing, enjoy it!
Commenter la réponse de cs_Robert33
Messages postés
82
Date d'inscription
dimanche 25 janvier 2009
Dernière intervention
24 novembre 2012
- 17 juil. 2011 à 20:23
0
Merci
Bonjour,

Merci whismeril pour votre solution.

Robert33 votre solution est assez compliqué, je prefere la solution de whismeril

MERCI à vous deux
Commenter la réponse de omarF
Messages postés
12267
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 novembre 2018
- 17 juil. 2011 à 23:33
0
Merci
Bonsoir,

ma solution est certes simple mais si tu ne tapes pas de nombre, elle buggera.
Robert33 l'a anticipé...
Sa solution est donc meilleure.

Whismeril
Commenter la réponse de Whismeril
Messages postés
14231
Date d'inscription
lundi 11 juillet 2005
Dernière intervention
19 novembre 2018
- 18 juil. 2011 à 16:48
0
Merci
Hello,
Merci de valider une réponse avec le bouton "réponse acceptée".


@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.