//Ронжин Л. //3.*Описать класс дробей — рациональных чисел, являющихся отношением двух целых чисел. //Предусмотреть методы сложения, вычитания, умножения и деления дробей. //Написать программу, демонстрирующую все разработанные элементы класса. //* Добавить свойства типа int для доступа к числителю и знаменателю; //* Добавить свойство типа double только на чтение, чтобы получить десятичную дробь числа; //** Добавить проверку, чтобы знаменатель не равнялся 0. Выбрасывать исключение ArgumentException("Знаменатель не может быть равен 0"); //*** Добавить упрощение дробей. static void Main(string[] args) { string mes1 = "Введите числитель 1й дроби"; string mes2 = "Введите знаменатель 1й дроби"; Ratio ratio1 = new Ratio(MyMetods.ReadInt(mes1), MyMetods.ReadInt(mes2)); mes1 = "Введите числитель 2й дроби"; mes2 = "Введите знаменатель 2й дроби"; Ratio ratio2 = new Ratio(); ratio2.M = MyMetods.ReadInt(mes1); ratio2.N = MyMetods.ReadInt(mes2); MyMetods.Print($"У Вас есть 2 дроби:{ratio1} и {ratio2}."); MyMetods.Print($"В десятичной форме данные дроби имеют вид: {ratio1.Des} и {ratio2.Des}."); Ratio rez; rez = Ratio.Simplification(Ratio.Sum(ratio1, ratio2)); Console.WriteLine($"{ratio1} + {ratio2} = {rez}"); rez = Ratio.Simplification(Ratio.Minus(ratio1, ratio2)); Console.WriteLine($"{ratio1} - {ratio2} = {rez}"); rez = Ratio.Simplification(Ratio.Multi(ratio1, ratio2)); Console.WriteLine($"{ratio1} * {ratio2} = {rez}"); rez = Ratio.Simplification(Ratio.Div(ratio1, ratio2)); Console.WriteLine($"{ratio1} / {ratio2} = {rez}"); MyMetods.Pause(); }
static void Main(string[] args) { List <Fun> methods = new List <Fun>() { FunQuadratic, FunPow3, Math.Sin, Math.Cos }; Console.WriteLine("В программе заложены четыре функции:\n1. x^2 - 50x + 10\n2. x^3\n3. Sin(x)\n4. Cos(x)\n"); int num = MyMetods.ReadInt("Укажите номер функции которую хотите использовать") - 1; try { SaveFunc(methods[num], "data.bin", -100, 100, 0.5); double[] arr = Load("data.bin", out double min); //Массив считанных значений. Console.WriteLine(min); //Вывод массива в консоль //for (int i = 0; i < arr.Length; i++) //{ // Console.WriteLine(arr[i]); //} } catch (Exception) { Console.WriteLine("Вы указали несуществующий номер функции."); } MyMetods.Pause(); }
//Ронжин Л. //5.*а) Реализовать библиотеку с классом для работы с двумерным массивом. //Реализовать конструктор, заполняющий массив случайными числами. //Создать методы, которые возвращают сумму всех элементов массива, //сумму всех элементов массива больше заданного, свойство, возвращающее минимальный элемент массива, //свойство, возвращающее максимальный элемент массива, метод, возвращающий номер //максимального элемента массива(через параметры, используя модификатор ref или out). // **б) Добавить конструктор и методы, которые загружают данные из файла и записывают данные в файл. // ** в) Обработать возможные исключительные ситуации при работе с файлами. //В целом все понятно, но по времени не все успел static void Main(string[] args) { ArrayLibrary arr = new ArrayLibrary(3, 4); arr.Print(); Console.WriteLine($"Сумма всех элементов массива - {arr.Sum()}"); int n = MyMetods.ReadInt("Введите число"); Console.WriteLine($"Сумма элементов массива, которые больше {n} - {arr.Sum(n)}"); Console.WriteLine($"Минимальный элемент массива - {arr.Min}"); Console.WriteLine($"Максимальный элемент массива - {arr.Max}"); MyMetods.Pause(); }
static void Main(string[] args) { MyMetods.Print("Введите первое число."); int a = MyMetods.ReadInt(); MyMetods.Print("Введите второе число."); int b = MyMetods.ReadInt(); Console.WriteLine($"От a до b: {MyMetods.RecPrint(a, b)}"); Console.WriteLine($"От a до b(вар 2): {MyMetods.RecPrintV2(a, b)}"); Console.WriteLine($"Сумма от a до b: {MyMetods.RecSum(a, b)}"); Console.WriteLine($"Сумма от a до b(вар 2): {MyMetods.RecSumV2(a, b)}"); MyMetods.Pause(); }
//Ронжин Л. //1. а) Дописать структуру Complex, добавив метод вычитания комплексных чисел.Продемонстрировать работу структуры. //б) Дописать класс Complex, добавив методы вычитания и произведения чисел.Проверить работу класса. //в) Добавить диалог с использованием switch демонстрирующий работу класса. static void Main(string[] args) { string mes1 = "Введите вещественную часть 1го числа"; string mes2 = "Введите мнимую часть 1го числа"; Complex complex1 = new Complex(MyMetods.ReadInt(mes1), MyMetods.ReadInt(mes2)); //Console.WriteLine(complex1); mes1 = "Введите вещественную часть 2го числа"; mes2 = "Введите мнимую часть 2го числа"; Complex complex2 = new Complex(MyMetods.ReadInt(mes1), MyMetods.ReadInt(mes2)); //Console.WriteLine(complex2); Complex rez; MyMetods.Print($"У Вас есть 2 комплексных числа {complex1} и {complex1}.\n" + $"Вы можете их сложить, найти их разницу или умножить.\n" + $"Введите соответствующий символ.\n" + $"\"+\" - для сложения,\n\"-\" - для нахождения разницы,\n\"*\" - для умножения."); string sym = Console.ReadLine(); switch (sym) { case "+": rez = Complex.Sum(complex1, complex2); Console.WriteLine($"({complex1}) {sym} ({complex2}) = {rez}"); break; case "-": rez = Complex.Subtraction(complex1, complex2); Console.WriteLine($"({complex1}) {sym} ({complex2}) = {rez}"); break; case "*": rez = Complex.Multi(complex1, complex2); Console.WriteLine($"({complex1}) {sym} ({complex2}) = {rez}"); break; default: MyMetods.Print("Вы выбрали несуществующее действие, программа ничего не выполнила."); break; } MyMetods.Pause(); }
//3. С клавиатуры вводятся числа, пока не будет введен 0. Подсчитать сумму всех нечетных положительных чисел. static void Main(string[] args) { MyMetods.Print("Введите целое число."); int n = MyMetods.ReadInt(); int sum = 0; do { if (n > 0 && (n % 2 != 0)) { sum += n; } MyMetods.Print("Введите следующее число."); n = MyMetods.ReadInt(); }while (n != 0); Console.WriteLine($"Сумма всех нечетных положительных чисел введенных с клавиатуры - {sum}."); MyMetods.Pause(); }
//Ронжин Л. //2. а) С клавиатуры вводятся числа, пока не будет введён 0 (каждое число в новой строке). //Требуется подсчитать сумму всех нечётных положительных чисел. //Сами числа и сумму вывести на экран, используя tryParse. //б) Добавить обработку исключительных ситуаций на то, что могут быть введены некорректные данные. // При возникновении ошибки вывести сообщение.Напишите соответствующую функцию; static void Main(string[] args) { // Пункт б как я понимаю был выполнен еще на 1м уроке, где я заранее использовал tryParse MyMetods.Print("Введите целое число."); int n = MyMetods.ReadInt(); int sum = 0; string str = n.ToString(); do { if (n > 0 && (n % 2 != 0)) { sum += n; } MyMetods.Print("Введите следующее число."); n = MyMetods.ReadInt(); str = str + ", " + n.ToString(); }while (n != 0); Console.WriteLine($"Сумма всех нечетных положительных чисел из ряда: {str} составляет {sum}."); MyMetods.Pause(); }
static void Main(string[] args) { /*4. Написать программу обмена значениями двух переменных: * а) с использованием третьей переменной; */ #region MyMetods.Print("Вариант а.\nУкажите 1ю переменную."); int a = MyMetods.ReadInt(); MyMetods.Print("Укажите 2ю переменную."); int b = MyMetods.ReadInt(); int c; c = a; a = b; b = c; Console.WriteLine($"Первая переменная: {a}.\nВторая переменная: {b}."); /* б) *без использования третьей переменной. */ MyMetods.Print("\nВариант б. Те же значения обратно."); a = a + b; b = a - b; a = a - b; Console.WriteLine($"Первая переменная: {a}.\nВторая переменная: {b}."); MyMetods.Pause(); #endregion }