Лабораторная работа №1. Введение
Требуемые условия завершения
Открыто с: четверг, 14 февраля 2019, 11:55
Срок сдачи: четверг, 14 февраля 2019, 13:30
- Создание простейшей программы. Создаём новый проект консольного приложения (процесс описан по ссылке). В метод Main добавляем две команды
Console.WriteLine("Hello, world!"); Console.ReadKey();
Console.WriteLine
- отображает информацию на консоли,Console.ReadKey();
- для задержки экрана. Запустите проект при помощи F5. - Создание своего метода. Создайте в классе Program новый метод
static void Hello() { }
static
- означает, что метод является статическим,void
- означает, что метод не возвращает никакого результата. Добавьте в тело метода командуConsole.WriteLine("Hello, world!");
. В метод Main добавьте вызов метода Hello() - Задание: даны два целых числа a и b. Найти их среднее арифметическое: (a + b)/2. Для решения задачи создаём новый метод
static double Average(int a, int b) { }
Метод имеет два параметра типаint
(целое число), которые передаются по значению, и возвращает значение типаdouble
(вещественное число). Информация о типах данных в языке C# - по ссылке. Так как метод возвращает значение, он должен содержать операторreturn /*возвращаемое значение*/;
Для вычисления используем арифметические операции языка C#.
Для того, чтобы продемонстрировать работу метода, используем следующий набор командConsole.WriteLine("Введите два числа:"); // выводим на консоль сообщение пользователю string aString = Console.ReadLine(); // сохраняем в двух переменных типа string (строка) ввод пользователя string bString = Console.ReadLine(); int a = int.Parse(aString); // обе строки преобразуем к целым числам и сохраняем в переменных a и b int b = int.Parse(bString); Console.WriteLine($"Среднее арифметическое чисел {a} и {b} равно {Average(a, b)}"); //
(дополнительная информация о консольном вводе-выводе и интерполяции). - Даны три целых числа: A, B, C. Проверить истинность высказывания: «Справедливо двойное неравенство A < B < C». Для решения задачи создаём метод
static bool Inequality(int a, int b, int c){}
Метод возвращает результат типаbool
, который принимает значениеtrue/false
(истина/ложь). Пользуемся операциями сравнения и логическими операциями. Для демонстрации работы вызываем новый метод из Main() - Найти значение функции \[ y = 4(x–3)^6 – 7·(x–3)^3 + 2 \] при данном значении x. При решении используем вспомогательную переменную для величины \((x–3)^3\). Новый метод принимает и возвращает значение типа double.
- Найти расстояние между двумя точками с заданными координатами \((x_1, y_1)\) и \((x_2, y_2)\) на плоскости. Расстояние вычисляется по формуле \[ \sqrt{(x_1-x_2)^2+(y_1-y_2)^2} \]. Для вычисления корня используем
Math.Abs
- Даны координаты трех вершин треугольника: \((x_1, y_1)\), \((x_2, y_2)\), \((x_3, y_3)\). Найти его периметр и площадь, используя формулу для расстояния между двумя точками на плоскости (используем метод из предыдущей задачи). Для нахождения площади треугольника со сторонами a, b, c использовать формулу Герона:\[ \sqrt{p(p-a)(p-b)(p-c)}\]
- Поменять местами содержимое переменных A и B и вывести новые значения A и B. Создаём метод, принимающий два параметра по ссылке
static void Swap(ref int a, ref int b){}
При передаче параметров по ссылке важно помнить, что ключевое словоref
используется не только в списке параметров метода, но и при вызове метода. В метод Main добавляем код:Console.WriteLine("Введите два числа:"); a = int.Parse(Console.ReadLine()); b = int.Parse(Console.ReadLine()); Console.WriteLine($"a = {a}, b = {b}"); Swap(ref a, ref b); Console.WriteLine($"a = {a}, b = {b}");
- Создать метод, который принимает два вещественных параметра и одновременно вычисляет среднее арифметическое и среднее геометрическое двух чисел. Его сигнатура следующая
static void AGAverage(double a, double b, out double a, out double b){}
Метод использует два out-параметра или выходных параметра. Ключевое слово out используется как при определении метода, так и при его вызове. Определять новые переменные для выходных параметров можно непосредственно при вызове метода.AGAverage(1, 2, out int aMean, out int gMean);
При вызове метода нужно убедится, что два числа, переданные в качестве параметров, являются положительными числами. Используем командуDebug.Assert(a>0 && b>0);
- Создать метод, который возвращает истину, если целое число, переданное в качестве параметра, совпадает с номером високосного года.