コード例 #1
0
        public Complexe Inverse()
        {
            Complexe TempInv = new Complexe();

            TempInv.x = x / (Math.Pow(x, 2) + Math.Pow(y, 2));
            TempInv.y = -y / (Math.Pow(x, 2) + Math.Pow(y, 2));

            return(TempInv);
        }
コード例 #2
0
        public Complexe Produit(Complexe nombre)
        {
            Complexe TempPro = new Complexe();

            TempPro.x = this.GetPartieReelle() * nombre.GetPartieReelle() - this.GetPartieImaginaire() * nombre.GetPartieImaginaire();
            TempPro.y = this.GetPartieReelle() * nombre.GetPartieReelle() + this.GetPartieImaginaire() * nombre.GetPartieImaginaire();

            return(TempPro);
        }
コード例 #3
0
        public Complexe Soustraction(Complexe nombre)
        {
            Complexe TempSou = new Complexe();

            TempSou.x = this.GetPartieReelle() - nombre.GetPartieReelle();
            TempSou.y = this.GetPartieImaginaire() - nombre.GetPartieImaginaire();

            return(TempSou);
        }
コード例 #4
0
        public Complexe Addition(Complexe nombre)
        {
            //Complexe TempAdd = new Complexe();
            double Nx, Ny;

            Nx = this.x + nombre.GetPartieReelle();     // x du nouveau complexe = x (via methode get...) appelant la méthode (main) + .x dans la parenthèse de l'appel (main)
            Ny = this.y + nombre.GetPartieImaginaire(); //  y du nouveau complexe = y (via methode get...) appelant la méthode (main) + .y dans la parenthèse de l'appel (main)

            Complexe TempAdd = new Complexe(Nx, Ny);

            return(TempAdd);
            // On pourrait faire return new Complexe(Nx, Ny)
            // On peut remplacer Nx et Ny
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: LegarsVv/nombrecomplexe
        public static Complexe EntrerUnComplexe() // Méthode func. d'enregistrement d'un complexe
        {
            double   NbreX, NbreY;
            Complexe TempComp;

            Console.Write("Partie réelle : ");
            NbreX = Convert.ToDouble(Console.ReadLine());
            Console.Write("Partie imaginaire : ");
            NbreY = Convert.ToDouble(Console.ReadLine());

            TempComp = new Complexe(NbreX, NbreY);

            return(TempComp);
        }
コード例 #6
0
ファイル: Program.cs プロジェクト: LegarsVv/nombrecomplexe
        static void Main()
        {
            int      Choix;
            int      PosLibre = 0;
            int      MAX      = 10;
            Complexe NbreComp1;
            Complexe NbreComp2;

            double[] TabComplexeR = new double[MAX];
            double[] TabComplexeI = new double[MAX];

            NbreComp1 = new Complexe();
            NbreComp2 = new Complexe();

            do
            {
                Console.WriteLine("1. Afficher la somme de deux nombres complexes saisis par l’utilisateur");
                Console.WriteLine("2. Afficher la soustraction de deux nombres complexes saisis par l’utilisateur");
                Console.WriteLine("3. Afficher le produit de deux nombres complexes saisis par l’utilisateur");
                Console.WriteLine("4. Afficher l’inverse d’un nombre complexe saisi par l’utilisateur");
                Console.WriteLine("5. Afficher le module d’un nombre complexe saisi par l’utilisateur");
                Console.WriteLine("6. Ajouter un Complexe dans un tableau");
                Console.WriteLine("7. Faire la somme des nombres complexes du tableau");
                Console.WriteLine("8. Quitter");
                Choix = Convert.ToInt32(Console.ReadLine());

                if (Choix == 1 || Choix == 2 || Choix == 3)
                {
                    Console.WriteLine("Donner votre premier complexe,");
                    NbreComp1 = EntrerUnComplexe();
                    Console.WriteLine("Donner votre deuxième complexe,");
                    NbreComp2 = EntrerUnComplexe();
                }

                if (Choix == 4 || Choix == 5)
                {
                    Console.WriteLine("Donner votre nombre complexe,");
                    NbreComp1 = EntrerUnComplexe();
                }

                if (Choix == 6)
                {
                    if (PosLibre == MAX)
                    {
                        Console.WriteLine("Ajout impossible !");
                        Choix = 0;
                    }
                    else
                    {
                        Console.WriteLine("Donner votre nombre complexe,");
                        NbreComp1 = EntrerUnComplexe();
                    }
                }

                switch (Choix)
                {
                case 1:
                    Console.WriteLine();
                    Console.WriteLine(NbreComp1.Addition(NbreComp2));
                    break;

                case 2:
                    Console.WriteLine();
                    Console.WriteLine(NbreComp1.Soustraction(NbreComp2));
                    break;

                case 3:
                    Console.WriteLine();
                    Console.WriteLine(NbreComp1.Produit(NbreComp2));
                    break;

                case 4:
                    Console.WriteLine();
                    if (NbreComp1.GetPartieReelle() != 0 && NbreComp1.GetPartieImaginaire() != 0)
                    {
                        Console.WriteLine(NbreComp1.Inverse());
                    }
                    else
                    {
                        Console.WriteLine("Pas de 0 dans votre nombre complexe merci");
                    }
                    break;

                case 5:
                    Console.WriteLine();
                    Console.WriteLine(NbreComp1.Module());
                    break;

                case 6:
                    Console.WriteLine();
                    TabComplexeR[PosLibre] = NbreComp1.GetPartieReelle();
                    TabComplexeI[PosLibre] = NbreComp1.GetPartieImaginaire();
                    PosLibre += 1;

                    for (int I = 0; I <= PosLibre - 1; I++)
                    {
                        Console.WriteLine("Nombre : " + TabComplexeR[I] + " , " + TabComplexeI[I]);
                    }
                    break;

                case 7:
                    double X = 0;
                    double Y = 0;
                    for (int I = 0; I <= PosLibre - 1; I++)
                    {
                        X = X + TabComplexeR[I];
                        Y = Y + TabComplexeI[I];
                    }
                    Console.WriteLine("Addition des nombres complexes du tableau : (" + X + " , " + Y + ")");
                    break;

                case 8:
                    Console.WriteLine("Au revoir !");
                    break;
                }

                Console.WriteLine(); // Sauter une ligne avant le rappel du menu
            }while (Choix != 8);

            Console.ReadLine(); // Garder la console ouverte
        }