Слайд 1Разработчики: Деникин А.В., Деникина Н.В.
МАССИВЫ В C#.
Содержание Принципы работы с массивами Типовые алгоритмы обработки массивов Сортировка массивов Задачи на обработку массивов в ЕГЭ Простые олимпиадные задачи с использованием массивов
Слайд 2Одномерные массивы
Массив - набор элементов одного и того же типа, объединенных общим именем. Массивы в С# можно использовать по аналогии с тем, как они используются в других языках программирования. ОСОБЕННОСТИ: Массив в C# - это ссылочный тип данных, реализованы как объекты. Фактически имя массива является ссылкой на область динамической памяти, в которой последовательно размещается набор элементов определенного типа. Выделение памяти под элементы происходит на этапе инициализации массива. Неиспользуемые массивы автоматически удаляются из памяти
Слайд 3ОДНОМЕРНЫЙ МАССИВ - это фиксированное количество элементов одного и того же типа, объединенных общим именем, где каждый элемент имеет свой номер ОСОБЕННОСТИ: Нумерация элементов массива в C# начинается с нуля.
ФОРМА ОБЪЯВЛЕНИЯ МАССИВА:
базовый_тип [] имя__массива = new базовый_тип [размер]; Например: int []a=new int [10];
базовый_тип [] имя__массива={список инициализации}; Например: int []a={0, 1, 2, 3};
На этапе объявления массива можно произвести его инициализацию
Базовый тип определяет тип данных каждого элемента массива
Количество элементов, которые будут храниться в массиве, определяется размер массива.
Слайд 4Одномерные массивы. Примеры
Так как массив представляет собой набор элементов, объединенных общим именем, то обработка массива обычно производится в цикле. Рассмотрим несколько простых примеров работы с одномерными массивами.
Пример 1. static void Main() { int[] myArray = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; int i; for (i = 0; i
Объявление массива с начальной инициализацией
Вывод массива на экран в столбик
ЗАДАНИЕ: Как изменить программу, чтобы массив выводился в строчку?
Console.Write(myArray[i]+" ");
Слайд 5Пример 2. static void Main() { int[] myArray = new int[10]; int i; for (i = 0; i
Объявление массива из 10 элементов
Заполнение массива по правилу
ЗАДАНИЕ: По какому правилу заполняется массив?
ЗАДАНИЕ: Как изменить программу, чтобы заполнялся массив из n элементов?
Пример 2. static void Main() { int[] myArray = new int[10]; int i; int n = int.Parse(Console.ReadLine()); for (i = 0; i
Слайд 6Массив как параметр
Так как имя массива фактически является ссылкой, то он передается в метод по ссылке и, следовательно, все изменения элементов массива, являющегося формальным параметром, отразятся на элементах соответствующего массива, являющимся фактическим параметром.
class Program { static void Print(int n, int[] a) { for (int i = 0; i 0) a[i] = 0; }
static void Main() { int[] myArray = { 0, -1, -2, 3, 4, 5, -6, -7, 8, -9 }; Print(10, myArray); Change(10, myArray); Print(10, myArray); } }
Метод вывода элементов массива на экран в строку. n – размерность массива; a – ссылка на массив
Метод изменения элементов массива.
Основная часть программы
Слайд 7Одномерные массивы. Практика 1.
Измените предыдущую программу так, чтобы метод Change: Заменял отрицательные элементы массива на противоположные по знаку; Прибавлял к каждому элементу массива число 25; Если элемент четный, то прибавить к нему первый, если нечетный – последний элемент массива. Первый и последний элементы не изменять Все четные элементы массива возвести в квадрат, а нечетные удвоить. Из положительных элементов массива вычесть элемент с номером k1, а отрицательные увеличить на значение элемента с номером k2, нулевые элементы оставить без изменения Изменить знак у максимального по модулю элемента массива
Срок сдачи заданий «Практики 1» к следующему занятию.
Слайд 8Одномерные массивы. Практика 2.
Напишите программы к следующим примерам Даны два одномерных массива одинаковой размерности. Получить третий массив такой же размерности, каждый элемент которого равен сумме соответствующих элементов данных массивов Даны два одномерных массива одинаковой размерности. Получить третий массив такой же размерности, каждый элемент которого равен максимальному из соответствующих элементов данных массивов Дан первый элемент арифметической прогрессии и разность между соседними элементами. Сформировать одномерный массив из первых n элементов арифметической прогрессии. Даны два одномерных массива A и B. Найти их скалярное произведение. Скалярное произведение определяется как сумма A[1]·B[1]+ A[2]·B[2]+… +A[n-1]·B[n-1]+A[n]·B[n], где n – количество элементов в массивах. Найти значение второго максимального по модулю элемента массива Найти среднеарифметическое значение элементов массива Из элементов массива A сформировать элементы массива B по правилу: B[i]:=A[1]+A[2]+..+A[i]
Срок сдачи заданий «Практики 2» - 1 неделя