Last active
June 25, 2017 21:11
-
-
Save Ambratolm/4e380946f55a1d885bbec695ea92c75f to your computer and use it in GitHub Desktop.
Écrire une classe Complexes permettant de représenter des nombres complexes. Un nombre complexe Z comporte une partie réelle et une partie imaginaire : Z = PartieRéelle + PartieImaginaire * i Définir à l’aide des propriétés les méthodes d’accès aux attributs de la classe. Définir un constructeur par défaut permettant d’initialiser les deux parti…
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Complexe | |
{ | |
private double reel,imaginaire; | |
public double Imaginaire | |
{ | |
get { return imaginaire; } | |
set { imaginaire = value; } | |
} | |
public double Reel | |
{ | |
get { return reel; } | |
set { reel = value; } | |
} | |
public Complexe(double re = 0, double im = 0) | |
{ | |
reel = re; | |
imaginaire = im; | |
} | |
public double getModule() | |
{ | |
return Math.Sqrt(reel*reel + imaginaire*imaginaire); | |
} | |
public Complexe Plus(Complexe z) | |
{ | |
Complexe somme = new Complexe(); | |
somme.reel = reel + z.reel; | |
somme.imaginaire = imaginaire + z.imaginaire; | |
return somme; | |
} | |
public Complexe Moins(Complexe z) | |
{ | |
Complexe difference = new Complexe(); | |
difference.reel = reel - z.reel; | |
difference.imaginaire = imaginaire - z.imaginaire; | |
return difference; | |
} | |
public void Afficher() | |
{ | |
Console.Write("{0}+{1}*i", reel,imaginaire); | |
} | |
public void SetComplexe() | |
{ | |
Console.Write("Entrez la partie réelle: "); reel = double.Parse(Console.ReadLine()); | |
Console.Write("Entrez la partie imaginaire: "); imaginaire = double.Parse(Console.ReadLine()); | |
Console.Write("Expression du nombre complexe: "); | |
Console.ForegroundColor = ConsoleColor.Green; Afficher(); Console.ResetColor(); | |
} | |
} | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
start: | |
Complexe Z = new Complexe(), A = new Complexe(); | |
Console.BackgroundColor = ConsoleColor.DarkGray; Console.WriteLine("Nombres complexes"); Console.ResetColor(); | |
Z.SetComplexe(); | |
Console.ForegroundColor = ConsoleColor.Magenta; | |
Console.WriteLine("\nModule: " + Z.getModule().ToString()); | |
Console.ResetColor(); | |
choix: | |
Console.Write("\n\t[1.Ajouter] [2.Soustraire] [Autre.Relancer] un nombre complexe ? \n\t\t * Choix: "); | |
int choix = int.Parse(Console.ReadLine()); | |
switch (choix) | |
{ | |
case 1: A.SetComplexe(); Console.WriteLine(""); Z.Afficher(); Console.Write(" + "); | |
A.Afficher() ; Console.Write(" = "); | |
Z.Plus(A).Afficher(); | |
goto choix; | |
case 2: A.SetComplexe(); Console.WriteLine(""); Z.Afficher(); Console.Write(" - "); | |
A.Afficher(); Console.Write(" = "); | |
Z.Moins(A).Afficher(); | |
goto choix; | |
default: Console.Clear(); goto start; | |
} | |
Console.ReadKey(); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment