Выберите задачи из предложенного списка в соответствии с Вашим порядковым номером в журнале. При решении задач используйте программу-шаблон. Не забудьте пояснять решение задачи комментариями. Приготовьтесь объяснить решение задач учителю.
1. Найти сумму и количество элементов с заданным условием (хранить эти значения в массивах):
- элементы каждого столбца, кратные k1 или k2;
- элементы каждого столбца, попадающие в промежуток [А..В];
- элементы каждого столбца, которые являются простыми числами;
- элементы каждого столбца положительны и лежат выше главной диагонали;
- отрицательные элементы каждого столбца, меньшие заданного числа а;
- элементы каждого столбца, меньшие среднего арифметического элементов каждого столбца;
- элементы каждой строки, больших среднего арифметического элементов данной строки;
- максимальные элементы каждой строки;
- отрицательные элементы каждой строки;
- элементы каждой строки, равные сумме соседних с ним элементов;
- элементы каждой строки, равные элементу в том же столбце, но в предыдущей строке.
2. Найти и вывести на экран индексы заданных элементов массива (если их нет выдать соответствующее сообщение):
- четных элементов каждой строки и нечетных элементов каждого столбца;
- симметричных чисел;
- первых k отрицательных элементов каждого столбца;
- последних k отрицательных элементов каждой строки;
- последних k отрицательных элементов каждого столбца;
- равных между собой элементов каждого столбца;
- элементов, являющимися действительными числами;
- элементов, являющихся трехзначными числами;
- элементов, не имеющих целой части;
- элементов, являющихся числами, сумма цифр которых равна заданному числу;
- элементов, являющихся числами, первая цифра которых равна заданной.
3. Используя функцию булева типа, определить:
- есть ли в данном массиве отрицательный элемент;
- есть ли два одинаковых элемента;
- есть ли данное число А среди элементов массива;
- есть ли в заштрихованной области массива (рис. а) элемент, равный введенному с клавиатуры числу (массив имеет размерность nxn);
- есть ли в заштрихованной области массива (рис. b) элемент, равный введенному с клавиатуры числу (массив имеет размерность nxn):
- есть ли в заштрихованной области массива (рис. c) элемент, равный введенному с клавиатуры числу (массив имеет размерность nxn):
- является ли массив логическим квадратом, то есть суммы по всем горизонталям, вертикалям и двум диагоналям должны быть равны;
- добавить к предыдущему условию, что сумма должна быть равна данному числу А;
- состоящая только из положительных элементов;
- состоящая только из положительных или нулевых элементов;
- состоящая только из элементов, принадлежащих промежутку от А до В.
4. Измените исходный массив в соответствии с заданием:
- в каждой строке сменить знак максимального по модулю элемента на противоположный;
- отрицательный последний элемент каждого столбца заменить нулем;
- положительные элементы умножить на первый элемент соответствующей строки, а отрицательные - на последний;
- заменить все элементы строки с номером k и столбца с номером р на противоположные по знаку (элемент, стоящий на пересечении, не изменять);
- к элементам столбца k1 прибавить элементы столбца k2;
- переверните в массиве каждую третью строку;
- поменяйте местами заданные элементы каждого столбца;
- добавьте к массиву столбец, содержащий максимальный элемент соответствующей строки, и строку содержащую минимальный элемент соответствующего столбца;
- найти максимальный элемент каждой строки и заменить им все минимальные элементы строки;
- найти минимальный и максимальный элементы столбца и заменить их суммой последний элемент;
- переверните в массиве каждую половину каждого столбца.
5. Решите задачу на заполнение массива по определенному правилу.
- Составить программу вывода на экран арифметического квадрата, в нем первый столбец и первая строка заполнены единицами, а каждый из остальных элементов равен сумме своих соседей сверху и слева. Квадрат должен быть занесен в массив.
- Заполнить массив А размером NxM следующим образом:
21 20 19 18 17 16 15
8 9 10 11 12 13 14
7 6 5 4 3 2 1
- Заполнить массив А размером NxM следующим образом:
1 0 2 0 3 0 4
0 5 0 6 0 7 0
8 0 9 0 10 0 11
- Заполнить квадратный массив В размером NxN следующим образом:
1 4 7 10 13 17 20
2 5 8 11 14 18 21
3 6 9 12 15 19 22
- Заполнить квадратный массив В размером NxN следующим образом:
1 3 4 10 11 21
2 5 9 12 20 22
6 8 13 19 23 30
7 14 18 24 29 31
15 17 25 28 32 35
16 26 27 33 34 36
- Заполнить квадратный массив В размером NxN (N<10)следующим образом:
1 2 3 4 5 6 7
11 12 13 14 15 16 17
21 22 23 24 25 26 27
- Заполнить квадратный массив В размером NxN следующим образом:
0 1 1 1 1 0
2 0 1 1 0 4
2 2 0 0 4 4
2 2 0 0 4 4
2 0 3 3 0 4
0 3 3 3 3 0
- Заполнить квадратный массив В размером NxN следующим образом:
6 1 1 1 1 5
2 6 1 1 5 4
2 2 6 5 4 4
2 2 5 6 4 4
2 5 3 3 6 4
5 3 3 3 3 6
- Заполнить квадратный массив В следующим образом: первая строка - числа Фибоначчи, а каждый столбец продолжает ряд Фибоначчи от элемента, находящегося в первой строке.
- Заполнить массив рядом натуральных чисел, расположив их закручивающейся спиралью по часовой стрелке.
- Заполнить массив рядом натуральных чисел, расположив их раскручивающейся спиралью против часовой стрелки.
Вставка и удаление строк и столбцов.
Мы уже рассматривали такие действия для одномерных массивов. Обобщим для двумерных.