Содержание:
Теория
Задания и лабораторные работы
Выполнить: Создайте класс
MyFuncs и универсальный метод PrintArr для вывода массива элементов любого типа и любого размера. Для прохода по массиву используйте цикл foreach. Вызовите метод дважды: первый раз — для целочисленного массива, второй — для массива вещественного типа.
Пример выполнения:
Целочисленный массив: 1 6 2 7 5 Массив вещественных элементов: 1.2 6.4 2.1 7.5
[Название проекта: Lesson_9Lab1, название файла L9Lab1.cs]
✍ Алгоритм:
- Создайте консольное приложение с именем
Lesson_9Lab1. - В окне Обозреватель решений найдите файл
Program.csи переименуйте его вL9Lab1.cs. - Для того, чтобы при вводе и выводе информации в консоль не было бы необходимости постоянно писать название класса
Console, необходимо включить данный класс в самом начале кода: - Далее, необходимо добавить новый класс. После закрывающейся фигурной скобки класса
L9Lab1объявите класс с именемMyFuncs. Для того чтобы сделать его доступным во всех классах и пространствах имен проекта необходимо использовать ключевое словоpublic:
... using static System.Console; ... |
public static class MyFuncs
{
}
MyFuncs создайте метод PrintArr для вывода элементов массива. Сделайте метод доступным, добавив ключевое слово public:public static PrintArr<T>(this T[] arr) { }
T используется для вывода массивов любого типа. Ключевое слово this означает, что мы расширяем этот тип данным методом.PrintArr добавьте код для вывода элементов массива. Используйте цикл foreach:foreach (var x in arr) { Console.Write($"{x} "); }
foreach используется для вывода массива любого размера. Переменная x принимает значения элементов массива, которые выводятся в консоль. Main() и объявите одномерный целочисленный массив с именем arr1 и инициализируйте его элементами:static Main(string[] args) { Console.WriteLine("Целочисленный массив:"); [] arr1 = new [] { 1, 6, 2, 7, 5 }; ...
Static.new. После чего мы получаем доступ к членам объекта (полям и методам), используя точечную нотацию.PrintArr метод, используя точечную нотацию: ... arr1.PrintArr(); ...
arr1 — это экземпляр объекта класса массивов.arr2 и присвойте значения элементам массива. Вызовите метод:... Console.WriteLine("Массив вещественных элементов:"); double[] arr2 = { 1.2, 6.4, 2.1, 7.5 }; arr2.PrintArr(); ...
CTRL+F5).Выполнить: Запустите приложение предыдущей лабораторной работы. Добавьте функцию, которая выводит элементы массива любого типа с четными индексами.
Указание: Создайте функцию PrintEvenIndexes для вывода элементов массива с четными индексами. Помните, что индексы начинаются с 0. Функцию можно разместить в классе MyFuncs, она должна быть универсальной (<T> вспомните теоретический материал об универсальных методах). Не забудьте о служебном слове this.
Пример выполнения:
Целочисленный массив: 1 6 2 7 5 Элементы с четными индексами: 1 2 5 Массив вещественный: 1,2 6,4 2,1 7,5 8,1 Элементы с четными индексами: 1,2 2,1 8,1
[Название проекта: Lesson_9Task1, название файла L9Task1.cs]
Выполнить: Создайте класс с именем
Calculator и функцию с именем Add, которая принимает различное количество параметров и выводит их сумму. Используйте цикл foreach для перебора элементов массива. Вызовите метод трижды: первый раз — с двумя параметрами, второй — с тремя параметрами, третий — с массивом элементов.
Пример выполнения:
результат с двумя параметрами (1, 2): 3 результат с тремя параметрами (1, 2, 3): 6 результат с массивом (1, 2, 3, 4, 5): 15
[Название проекта: Lesson_9Lab2, название файлов L9Lab2.cs и Calculator.cs]
✍ Алгоритм:
- Создайте консольное приложение с именем
Lesson_9Lab2. Переименуйте файлprogram.csвL9Lab2.cs. - Создадим класс
Calculator. Добавьте файл класса в проект. Назовите файлCalculator. - Чтобы сделать класс доступным во всех проектах и пространствах имен, добавьте ключевое
public.
public class Calculator
{
}
Add, которое может принимать различное количество аргументов. Также используйте ключевое слово public:int Add(params [] numbers) { }
Add с уровнем доступа public возвращает значение типа int (integer). В качестве параметра метода указано ключевое слово params (для того, чтобы добавить возможность принимать различное количество аргументов), другим параметром является массив с именем numbers.sum и инициализируйте ее значением 0:sum = 0;
foreach для перебора элементов массива и добавления их к переменной sum:foreach (var number in numbers) { sum += number; }
sum:
return sum;
L9Lab2.cs file) в окне Обозреватель решений и в функции Main создайте экземпляр класса с именем Calculator:static void Main(string[] args) { calculator = new Calculator(); }
new. После чего можно использовать точечную нотацию для доступа к методам и свойствам объекта.Add с двумя параметрами — числами и выведите результат в консоль:Console.WriteLine($"результат с двумя параметрами (1, 2): {calculator.Add(1, 2)}");
CTRL+F5).Console.WriteLine($"результат с тремя параметрами (1, 2, 3): {calculator.Add(1, 2, 3)}");
Console.WriteLine($"результат с массивом (1, 2, 3, 4, 5): {calculator.Add(new int[]{1,2,3,4,5})}");
Выполнить: Создайте метод (функцию) для нахождения минимума среди целочисленной последовательности и для изменения значения найденного минимального элемента в 0. Вызовите метод дважды: с тремя целыми числами и с целочисленным массивом в качестве параметров. Нельзя использовать стандартную функцию min.
Указание 1: Create a class named Mimimum and a function named FindMin within the class. The function returns an array, that’s why you must use the signature with return type int[]:
public int[] FindMin(params int[] numbers) |
Указание2: В коде метода необходимо использовать циклы foreach и for:
1. Цикл foreach необходимо использовать для поиска минимума (как найти минимальный элемент: здесь (lab 3), ино используйте цикл foreach).
2. Цикл for необходим для поиска значений, которые равны минимальному, и присваиванию им значения 0.
Указание3: Функция возвращает массив, поэтому при вызове функции возвращаемое значение должно быть сохранено в переменную-массив:
int[] result1 = minimum.FindMin(5, 3, 6); foreach (var i in result1) { ... } |
Пример выполнения:
результат с тремя параметрами (5, 3, 6): 5 0 6 результат с целочисленным массивом ( 5, 3, 3, 6, 5 ) : 5 0 0 6 5
[Название проекта: Lesson_9Task2, название файлов L9Task2.cs и Minimum.cs]