|
Лабораторные работы №3-7. Лабораторная работа программирование алгоритмов линейной структуры на языке c#
Задание №5. Решить задачу на проверку условий после выполнения расчетов:
Дан двумерный массив. Выяснить, является ли произведение элементов второго столбца массива трехзначным числом.
Дан двумерный массив. Составить программу, определяющую, верно ли, что сумма элементов строки массива с известным номером превышает заданное число?
В двумерном массиве хранится информации о зарплате 18 человек за каждый месяц года (первого человека – в первой строке, второго – во второй и т.д.). Верно ли, что годовой доход первого человека больше некоторого заданного числа?
Фирма имеет 10 магазинов. Информация о доходе каждого магазина за каждый месяц года хранится в двумерном массиве (в первом столбце за январь, во втором – за февраль и т.д.). Верно ли, что общий доход фирмы в сентябре превысил некоторое заданное число?
B зрительном зале 23 ряда, в каждом из которых 40 мест (кресел). Информация о проданных билетах хранится в двумерном массиве, номера строк которых соответствуют номерам рядов, а номера столбцов – номерам мест. Если билет на то или иное место продан, то соответствующий элемент массива имеет значение 1, в противном случае – 0. Определить, имеются ли свободные места в первом ряду.
В поезде 18 вагонов, в каждом по 36 мест. Информация о проданных на поезд билетах хранится в двумерном массиве, номера строк которого соответствуют номерам вагонов, а номера столбцов – номерам мест. Если билет на то или иное место продан, то соответствующий элемент массива имеет значение 1, в противном случае – 0. Составить программу, определяющую, имеются ли свободные места в том или ином вагоне поезда.
Дан двумерный массив целых чисел. Составить программу, определяющую, верно ли, что сумма элементов столбца массива с известным номером кратна заданному числу.
Дан двумерный массив целых чисел. Составить программу, определяющую, верно ли что сумма элементов строки массива с известным номером оканчивается цифрой 0.
Дан двумерный массив. Определить в какой строке массива сумма элементов больше: в первой или в предпоследней.
Дан двумерный массив. Составить программу, которая определяет максимальное из двух чисел: суммы элементов k-й строки и суммы элементов s-го столбца массива.
Информация о количестве жильцов в каждой из четырех квартир каждого этажа 12-этажного дома хранится в двумерном массиве (в первой строке – информация о квартирах первого этажа, во второй – второго и т.д.). На каком этаже проживает больше людей: на третьем или на пятом?
В двумерном массиве хранится информация о зарплате каждого из 20 сотрудников фирмы за каждый месяц года (в первом столбце – за январь, во втором – за февраль и т.д.) Верно ли, что общая зарплата всех сотрудников в феврале была меньше, чем и октябре?
Информация о количестве жильцов в каждой из четырех квартир каждого этажа 12-этажного дома хранится в двумерном массиве (в первой строке – информация о квартирах первого этажа, во второй – второго и т.д.). В каждой квартире проживает одна семья. Найти численность самой большой семьи в квартирах 3-го и 4-го этажей.
Найти координаты (номера) элемента, наиболее близкого к среднему значению всех элементов массива.
Определить, является ли сумма значений элементов массива четырехзначным числом.
В поезде 20 вагонов, в каждом по 36 мест. Информация о проданных на поезд билетах хранится в двумерном массиве, номера строк которого соответствуют номерам вагонов, а номера столбцов – номерам мест. Если билет на то или иное место продан, то соответствующий элемент массива имеет значение 1, в противном случае – 0. Определить имеются ли в поезде свободные места.
Фирма имеет 10 магазинов. Информация о доходе каждого магазина за каждый месяц года хранится в двумерном массиве. Верно ли, что общий доход фирмы за год превысил некоторое заданное число?
Таблица футбольного чемпионата задана в виде двумерного массива из n строк и m столбцов, в котором все элементы, принадлежащие главной диагонали, равны нулю, а каждый элемент, не принадлежащий главной диагонали, равен 3. 1 или 0 (числу очков, набранных в игре: 3 – выигрыш, 1 – ничья, 0 – проигрыш). Найти число команд, имеющих больше побед, чем поражений.
Таблица футбольного чемпионата задана в виде двумерного массива из n строк и m столбцов, в котором все элементы, принадлежащие главной диагонали, равны нулю, а каждый элемент, не принадлежащий главной диагонали, равен 3. 1 или 0 (числу очков, набранных в игре: 3 – выигрыш, 1 – ничья, 0 – проигрыш). Определить номера команд, прошедших чемпионат без поражений.
Таблица футбольного чемпионата задана в виде двумерного массива из n строк и m столбцов, в котором все элементы, принадлежащие главной диагонали, равны нулю, а каждый элемент, не принадлежащий главной диагонали, равен 3. 1 или 0 (числу очков, набранных в игре: 3 – выигрыш, 1 – ничья, 0 – проигрыш). Есть ли хотя бы одна команда, выигравшая более половины игр.
Таблица футбольного чемпионата задана в виде двумерного массива из n строк и m столбцов, в котором все элементы, принадлежащие главной диагонали, равны нулю, а каждый элемент, не принадлежащий главной диагонали, равен 3. 1 или 0 (числу очков, набранных в игре: 3 – выигрыш, 1 – ничья, 0 – проигрыш). Определить номер команды, ставшей чемпионом.
Дан двумерный массив размером , заполненный целыми числами. Выяснить, является ли массив магическим квадратом. В магическом квадрате суммы элементов по всем строкам, столбцам и двум диагоналям равны. Значение, которому должны быть равны указанные суммы, определить, самостоятельно.
Таблица футбольного чемпионата задана в виде двумерного массива из n строк и m столбцов, в котором все элементы, принадлежащие главной диагонали, равны нулю, а каждый элемент, не принадлежащий главной диагонали, равен 3. 1 или 0 (числу очков, набранных в игре: 3 – выигрыш, 1 – ничья, 0 – проигрыш). Определить расположены ли команды в соответствии с занятыми ими местами в чемпионате (принять, что при равном числе очков места распределяются произвольно).
Таблица футбольного чемпионата задана в виде двумерного массива из n строк и m столбцов, в котором все элементы, принадлежащие главной диагонали, равны нулю, а каждый элемент, не принадлежащий главной диагонали, равен 3. 1 или 0 (числу очков, набранных в игре: 3 – выигрыш, 1 – ничья, 0 – проигрыш). Для каждой команды определить занятое ею место (для простоты принять, что при равном числе очков места распределяются произвольно).
Таблица футбольного чемпионата задана в виде двумерного массива из n строк и m столбцов, в котором все элементы, принадлежащие главной диагонали, равны нулю, а каждый элемент, не принадлежащий главной диагонали, равен 3. 1 или 0 (числу очков, набранных в игре: 3 – выигрыш, 1 – ничья, 0 – проигрыш). Получить последовательность номеров команд в соответствии с занятыми ими местами (сначала должен идти номер команды, ставшей чемпионом, затем команды, занявшей второе место и т.д.).
Задание №6. Решить задачу по изменению исходного массива:
Дан двумерный массив. Поменяйте местами элементы, расположенные в правом нижнем и правом верхнем углах массива.
Дан двумерный массив. Поменять местами первый максимальный и последний минимальный элементы массива. Принять, что массив просматривается построчно сверху вниз, а в каждой строке – слева направо.
Дан двумерный массив. Заменить значения всех элементов второй строки массива на число k.
Составить программу, которая проводит замену всех элементов некоторого столбца двумерного массива заданным числом k.
Составить программу, которая изменяет значения всех элементов некоторой строки двумерного массива на числа заданной последовательности. Числа последовательности должны вводиться с клавиатуры и в дополнительный одномерный массив не должны записываться.
К элементам k1-го столбца двумерного массива прибавить элементы k2-го столбца.
Заменить все элементы k-й строки и s-го столбца двумерного массива на противоположные по знаку (элемент, стоящий на пересечении, не изменять).
В каждой строке двумерного массива поменять местами первый элемент и любой из максимальных.
Дан двумерный массив. Составить программу, которая переставляет две любые строки массива.
Дан двумерный массив целых чисел. Ко всем четным элементам массива прибавить первый элемент соответствующей строки.
Дан двумерный массив целых чисел. Все элементы массива, оканчивающиеся на 2, умножить на последний элемент соответствующего столбца.
Дан двумерный массив целых чисел. Ко всем положительным элементам массива прибавить последний элемент соответствующей строки, а к остальным – первый элемент такой же строки.
Дан двумерный массив целых чисел. Все элементы массива, сумма индексов которых кратна пяти, заменить нулями.
Дан двумерный массив целых чисел. Ко всем четным элементам массива прибавить последний элемент соответствующей строки, а к остальным – первый элемент соответствующего столбца.
Дан двумерный массив целых чисел. Все элементы массива, сумма индексов которых четна, заменить числом k.
Дан двумерный массив целых чисел. Первый нулевой элемент каждой строки заменить на число k (предполагается, что в каждой строке есть нулевой элемент).
В каждой строке двумерного массива поменять местами первый нулевой элемент и последний отрицательный. Если таких элементов нет, то должно быть выдано соответствующее сообщение.
Дан двумерный массив. Составить программу, которая меняет местами две любые строки.
Дан двумерный массив. Составить программу, которая меняет местами два любых столбца.
Дан двумерный массив размером . Составить программу, которая меняет местами все элементы, симметричные относительно главной диагонали.
Дан двумерный массив размером . Составить программу, которая меняет местами все элементы, симметричные относительно побочной диагонали.
Дан двумерный массив из четного числа строк. Строки верхней половины массива поменять местами со строками нижней половины.
Дан двумерный массив из четного числа столбцов. Столбцы левой половины массива поменять местами со столбцами правой половины.
Дан двумерный массив из четного числа строк. Поменять местами первую строку со второй, третью – с четвертой и т.д.
Дан двумерный массив из четного числа столбцов. Поменять местам первый столбец со вторым, третий – с четвертым и т.д.
Задание №7. Работа с несколькими массивами:
Даны два двумерных массива одинаковых размеров. Создать третий массив такого же размера, каждый элемент которого равен 100, если соответствующие элементы двух первых массивов имеют одинаковый знак, и равен нулю в противном случае.
Даны два двумерных массива одинаковых размеров. Создать третий массив такого же размера, каждый элемент которого равен разности суммы соответствующих элементов двух первых массивов.
Даны два двумерных массива одинаковых размеров. Создать третий массив такого же размера, каждый элемент которого ранен 13, если оба соответствующих элемента двух первых массивов больше 50, и ранен 12 в противном случае.
Даны два двумерных массива из 12 строк и 28 столбцов. В первом из них записано количество осадков (в мм), выпавших за каждый из первых 28 дней каждого месяца 2009 года, во втором – аналогичные сведения за 2010 год. Получить третий массив с данными об изменении количества осадков для каждого дня (в мм).
Даны два двумерных массива из 12 строк и 28 столбцов. В первом из них записана температура воздуха за каждый из первых 28 дней каждого месяца 2009 года, во втором аналогичные сведения за 2010 год. Получить третий массив с данными об изменении температуры для каждого дня (в %).
Значения элементов двумерного массива из т строк и n столбцов скопировать в одномерный массив размером . Копирование проводить по строкам начиная с первой (а в ней – с крайнего левого элемента).
Значения элементов двумерного массива из т строк и n столбцов скопировать в одномерный массив размером . Копирование проводить по столбцам начиная с первого (а в нем – с самого верхнего элемента).
Дан двумерный массив размером . Сформировать одномерный массив из элементов заданного массива, расположенных над главной диагональю.
Дан двумерный массив размером . Сформировать одномерный массив из элементов заданного массива, расположенных под главной диагональю.
Дан двумерный массив размером . Сформировать одномерный массив из элементов заданного массива, расположенных над побочной диагональю.
Дан двумерный массив размером . Сформировать одномерный массив из элементов заданного массива, расположенных под побочной диагональю.
Дан двумерный массив размером , заполненный целыми числами. Все его элементы, кратные трем, записать в одномерный массив.
Дан двумерный массив размером , заполненный целыми числами. Все его положительные элементы записать в один одномерный массив, а остальные – в другой.
Дан двумерный массив размером , заполненный целыми числами. Все его отрицательные элементы записать в одномерный массив.
Дан двумерный массив размером , заполненный целыми числами. Все его четные элементы записать в один одномерный массив, нечетные – в другой.
Дан двумерный массив. Сформировать одномерный массив, каждый элемент которого равен количеству элементов соответствующего столбца двумерного массива, больших данного числа.
Дан двумерный массив. Сформировать одномерный массив, каждый элемент которого равен сумме элементов соответствующей строки двумерного массива, меньших данного числа.
Дан двумерный массив целых чисел. Сформировать одномерный массив, каждый элемент которого равен сумме четных положительных элементов соответствующего столбца двумерного массива.
Дан двумерный массив целых чисел. Сформировать одномерный массив, каждый элемент которого равен количеству нечетных отрицательных элементов соответствующей строки двумерного массива.
Дан двумерный массив целых чисел. Сформировать одномерный массив, каждый элемент которого равен количеству отрицательных элементов в соответствующей строке двумерного массива, кратных 3 или 7.
Дан двумерный массив целых чисел. Сформировать одномерный массив, каждый элемент которого равен сумме положительных элементов в соответствующем столбце двумерного массива, кратных 4 или 5.
Дан двумерный массив целых чисел. Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующего столбца двумерного массива.
Дан двумерный массив целых чисел. Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива.
Дан двумерный массив целых чисел. Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива (если такого элемента в столбце нет, то он равен нулю).
Дан двумерный массив целых чисел. Сформировать одномерный массив, каждый элемент которого ранен последнему нечетному элементу соответствующей строки двумерного массива (если такого элемента в строке нет, то он равен нулю).
Контрольные вопросы
Каким образом описывают массивы?
Как происходит обращение к элементам массива?
Укажите особенности ввода и вывода массивов.
В чем состоит особенность использования приемов программирования при обработке массивов?
Дайте определение массива.
Какие типы данных не допустимы для компонентов массива? Почему?
Когда индекс элемента в массиве совпадает с порядковым номером этого элемента?
Может ли индекс быть выражением любого порядкового типа?
Можно ли в описании массива использовать предварительно определенные константы?
Как можно сымитировать работу с массивом переменной длины?
|
|
|