Реализация действий над комплексными числами - C#
Формулировка задачи:
не выходит реализовать операции действий над числами
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace ComplexNumbers
- {
- class Program
- {
- static void Main()
- {
- Complex a = new Complex(2, 3);
- Complex b = new Complex(4, 5);
- Console.WriteLine(a.re.ToString() + " " + a.im.ToString());
- Console.Read();
- // your code goes here
- }
- }
- public class Complex
- {
- public float re;
- public float im;
- public Complex(float r, float m)
- {
- re = r;
- im = m;
- }
- public Complex() //конструктор без параметров
- {
- re = im = 0;
- }
- /* public static Complex& operator - (Complex C2);
- public static Complex& operator *(Complex C2); //объявляем в классе
- public static Complex& operator /(Complex C2);
- */
- /*virtual void Show() //метод для отображения переменной на экране
- {
- if (im > 0)
- System.Console.WriteLine("(%.2f%.2f\n)", re, im);
- else System.Console.WriteLine("(%.2f%.2f\n)", re, im);
- }
- */
- public static Complex operator + (Complex C2) //а здесь в классе Complex -оператор
- {
- Complex C;
- C.re = re + C2.re;
- C.im = im + C2.im;
- return C; }
- public static Complex operator - (Complex C2)
- { return new Complex(re - C2.re, im - C2.im);
- }
- public static Complex operator * (Complex C2) // Complex:: означает,что оператор относиться к классу
- {Complex C;
- C.Re=(Re*C2.Re-Im*C2.Im);
- C.Im=(C2.Re*Im+Re*C2.Im);
- return C;
- }
- public static Complex operator / (Complex C2)
- {
- Complex C;
- C.Re=(Re*C2.Re+Im*C2.Im)/(C2.Re*C2.Re+C2.Im*C2.Im);
- C.Im=(C2.Re*Im-C2.Im*Re)/(C2.Re*C2.Re+C2.Im*C2.Im);
- return C;
- }
- }
Решение задачи: «Реализация действий над комплексными числами»
textual
Листинг программы
- static void Main(string[] args)
- {
- Complex a = new Complex(2, 3);
- Complex b = new Complex(4, 5);
- Complex c = a - b;
- Console.WriteLine(c.re.ToString() + " " + c.im.ToString());
- }
- public class Complex
- {
- public float re;
- public float im;
- public Complex(float r, float m)
- {
- re = r;
- im = m;
- }
- public Complex() //конструктор без параметров
- {
- re = im = 0;
- }
- //public static Complex& operator - (Complex C2);
- //public static Complex& operator *(Complex C2); //объявляем в классе
- //public static Complex& operator /(Complex C2);
- //virtual void Show() //метод для отображения переменной на экране
- //{
- //if (im > 0)
- //System.Console.WriteLine("(%.2f%.2f\n)", re, im);
- //else System.Console.WriteLine("(%.2f%.2f\n)", re, im);
- //}
- public static Complex operator +(Complex C1, Complex C2) //а здесь в классе Complex -оператор
- {
- return new Complex(C1.re + C2.re, C1.im + C2.im);
- }
- public static Complex operator -(Complex C1, Complex C2)
- {
- return new Complex(C1.re - C2.re, C1.im - C2.im);
- }
- public static Complex operator *(Complex C1, Complex C2) // Complex:: означает,что оператор относиться к классу
- {
- Complex C = new Complex();
- C.re = (C1.re * C2.re - C1.im * C2.im);
- C.im = (C2.re * C1.im + C1.re * C2.im);
- return C;
- }
- public static Complex operator /(Complex C1, Complex C2)
- {
- Complex C = new Complex();
- C.re = (C1.re * C2.re + C1.im * C2.im) / (C2.re * C2.re + C2.im * C2.im);
- C.im = (C2.re * C1.im - C2.im * C1.re) / (C2.re * C2.re + C2.im * C2.im);
- return C;
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д