//Деление public SComplex Div(SComplex a) { SComplex result; result.Im = (Im * a.Im + Re * a.Re) / (Math.Pow(a.Im, 2) + Math.Pow(a.Re, 2)); result.Re = (Re * a.Im - Im * a.Re) / (Math.Pow(a.Im, 2) + Math.Pow(a.Re, 2)); return(result); }
//Вычитание public SComplex Sub(SComplex a) { SComplex result; result.Im = Im - a.Im; result.Re = Re - a.Re; return(result); }
//Умножение public SComplex Multy(SComplex a) { SComplex result; result.Im = Im * a.Im - Re * a.Re; result.Re = Im * a.Re + Re * a.Im; return(result); }
//Сумма public SComplex Add(SComplex a) { SComplex result; result.Im = Im + a.Im; result.Re = Re + a.Re; return(result); }
static void Main(string[] args) { ProjectSettings(); Console.WriteLine("Пример работы структуры и класса 'Комплексные числа'"); //1. а) Дописать структуру Complex, добавив метод вычитания комплексных чисел. Продемонстрировать работу структуры; SComplex struck1 = new SComplex(2.3, 2.7); SComplex struck2 = new SComplex(5.1, 4.9); SComplex resultStruck = struck1.Add(struck2); resultStruck.ShowStruck("Сумма"); resultStruck = struck1.Sub(struck2); resultStruck.ShowStruck("Вычитание"); resultStruck = struck1.Multy(struck2); resultStruck.ShowStruck("Умножение"); resultStruck = struck1.Div(struck2); resultStruck.ShowStruck("Деление"); Console.WriteLine("----------------------"); //б) Дописать класс Complex, добавив методы вычитания и произведения чисел. Проверить работу класса; CComplex class1 = new CComplex(2.3, 2.7); CComplex class2 = new CComplex(5.1, 4.9); CComplex resultClass = class1.Add(class2); resultClass.ShowClass("Сумма"); resultClass = class1.Sub(class2); resultClass.ShowClass("Вычитание"); resultClass = class1.Multy(class2); resultClass.ShowClass("Умножение"); resultClass = class1.Div(class2); resultClass.ShowClass("Деление"); Console.WriteLine("----------------------"); /*2.а) С клавиатуры вводятся числа, пока не будет введен 0(каждое число в новой строке). * Требуется подсчитать сумму всех нечетных положительных чисел.Сами числа и сумму вывести на экран; Используя tryParse;*/ SumOfNumbers sum1 = new SumOfNumbers(); sum1.SumTryParse(); /*б) Добавить обработку исключительных ситуаций на то, что могут быть введены некорректные * данные.При возникновении ошибки вывести сообщение.*/ SumOfNumbers sum2 = new SumOfNumbers(); sum2.SumTryCatch(); Console.WriteLine("----------------------"); Console.WriteLine("Пример работы класса дробь и упрощение дробей"); /*3.*Описать класс дробей -рациональных чисел, являющихся отношением двух целых чисел. * Предусмотреть методы сложения, вычитания, умножения и деления дробей. Написать * программу, демонстрирующую все разработанные элементы класса. * Добавить упрощение дробей.*/ Fraction fr1 = new Fraction(1, 6); Fraction fr2 = new Fraction(-3, 2); Fraction resultSum = fr1.Sum(fr2); Fraction.Print("Результат суммы:", fr1, fr2, resultSum); Fraction resultSub = fr1.Sub(fr2); Fraction.Print("Результат вычитания:", fr1, fr2, resultSub); Fraction resultMulty = fr1.Multy(fr2); Fraction.Print("Результат умножения:", fr1, fr2, resultMulty); Fraction resultDiv = fr1.Div(fr2); Fraction.Print("Результат деления:", fr1, fr2, resultDiv); Console.ReadKey(); }