- Составить программу, записывающую все положительные элементы двумерного массива А в одномерный массив В, а отрицательные - в одномерный массив С. Вывести полученные массивы на экран. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный массив. Сформировать одномерный массив путем деления положительных элементов заданной таблицы на число К. Вывести полученный массив на экран. Используйте подпрограммы для решения каждой частной задачи.
- Вычислите сумму элементов, находящихся на пересечении текущей строки и двух диагоналей двумерного квадратного массива, и запишите их в одномерный массив. Найдите наибольший из этих элементов. (Элементами i-й строки, лежащими на диагоналях, являются ai,j и ai,n-j+1). Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный массив. Заполнить одномерный массив суммами элементов строк, вывести полученную информацию на экран и номера строк, в которых сумма наименьшая. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный массив. Заполнить одномерный массив наименьшими значениями элементов строк, вывести полученную информацию на экран и номера строк, в которых значения наименьшие. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный массив. Заполнить одномерный массив разностями наибольших и наименьших значений элементов строк, вывести полученную информацию на экран и номера строк, в которых разности одинаковые. Используйте подпрограммы для решения каждой частной задачи.
- Для данного двумерного массива вычислите и запомните в другом двумерном массиве сумму и число положительных элементов каждого столбца заданного двумерного массива. Используйте подпрограммы для решения каждой частной задачи.
- Для данного двумерного массива вычислите и запомните в другом двумерном массиве сумму и число положительных элементов каждой строки и расположенных не ниже главной диагонали заданного двумерного массива. Используйте подпрограммы для решения каждой частной задачи.
- Из предложенного одномерного массива размерностью S сформируйте двумерный массив так, чтобы первая строка новой таблицы содержала бы четные по номеру элементы исходного массива, а вторая - нечетные. Предусмотрите случай нечетности S. Используйте подпрограммы для решения каждой частной задачи.
- Дан произвольный двумерный массив. Занести в другой двумерный массив в каждую строку следующую информацию о повторяющихся элементах: на первое место сам элемент, далее двузначные числа, первая цифра которых является индексом строки, вторая - индексом столбца всех совпадающих элементов. Используйте подпрограммы для решения каждой частной задачи.
- Для целочисленного двумерного массива найти для каждой строки число элементов, кратных 5, запишите информацию в одномерный массив и найдите наибольший из полученных результатов. Используйте подпрограммы для решения каждой частной задачи.
Дополнительные задачи (на усмотрение учителя)
- Заполните одномерный массив произведениями элементов строк заданного двумерного массива и выведите его на экран. Найдите сумму этих произведений. Используйте подпрограммы для решения каждой частной задачи.
- Заполните одномерный массив положительными элементами, расположенные на главной диагонали заданного квадратного массива. Выведите полученный массив на экран и найдите произведение элементов. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный квадратный массив. Вычислить сумму тех его элементов, расположенных на главной диагонали и выше нее, которые превосходят по величине все элементы, расположенные ниже главной диагонали. Если на главной диагонали и выше нее нет элементов с указанным свойством, то выдайте соответствующее сообщение. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный квадратный массив. Найти номера строк, все элементы которых равны нулю. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный квадратный массив. Найти номера строк, элементы в каждой из которых одинаковы между собой. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный квадратный массив. Найти номера строк, все элементы которых четны. Используйте подпрограммы для решения каждой частной задачи.
- Сколько в произвольном двумерном массиве содержится различных элементов? Занесите их в одномерный массив и выведите на экран. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный массив. Найти наибольший и наименьший элементы массива и,чередуя, заполнить ими одномерный массив заданной размерности. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный квадратный массив. В каждой строке двумерного массива наибольший элемент и элемент главной диагонали поменять местами, а их среднее арифметическое занести в одномерный массив. Вывести на экран полученный массив и среднее арифметическое его элементов. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный квадратный массив. В каждой строке двумерного массива наибольший элемент поместить на место первого элемента массива, а наименьший элементы - на место последнего. Создать одномерный массив, элементы которого являются суммой этих элементов. Вывести на экран полученный массив и сумму его элементов. Используйте подпрограммы для решения каждой частной задачи.
- Определить минимальный элемент двумерного массива. Напечатать номер строки, содержащей максимальное число минимальных элементов, если такие имеются. Используйте подпрограммы для решения каждой частной задачи.
- В двумерном массиве Х все числа различны. В каждой строке выбирается минимальный элемент, затем среди этих чисел выбирается максимальное. Напечатать номер строки массива Х, в которой расположено выбранное число.
- Дан двумерный массив. Найти наибольшее из значений элементов первой и последней строки. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный массив. Найдите сумму наибольших значений элементов его строк. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный массив. Найдите строку с наибольшей суммой элементов и наименьшей. Вывести на экран найденные строки и суммы их элементов. Используйте подпрограммы для решения каждой частной задачи.
- Составьте программу нахождения седловой точки таблицы. Седловой точкой называется элемент, являющийся одновременно максимальным в столбце и минимальным в строчке. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный квадратный массив. В строках с отрицательным элементом на главной диагонали найти сумму всех элементов и наибольший из всех элементов. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный массив. Найдите сумму элементов столбца и строки массива, на пересечении которых находится максимальный элемент. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный массив. Найдите сумму минимальных элементов диагоналей массива. Используйте подпрограммы для решения каждой частной задачи.
- Дан двумерный массив. Преобразовать его по следующему правилу: строку с номером N сделать столбцом с номером N, а столбец - строкой.
- Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (a).
- Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (b).
- Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (c).
- Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (d).
- Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (e).
- Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (f).
- Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (g).
- Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (k).
- * "Магическим" квадратом называется квадратная таблица целых чисел от 1 до N, расположенных так, что суммы элементов каждой строки, каждого столбца и обеих диагоналей одинаковы и равны (1/2)*N*(1+N)2.Построить "магический" квадрат для N=3, N=4, N=5.
- * Построить и вывести на экран "латинский" квадрат - таблицу, состоящую из n различных чисел, всех по n раз расположенных так, что в каждой строке и столбце каждое число встречается только один раз.
Контрольная работа.
1. Данный фрагмент программы преобразуйте в подпрограмму, используя правила форматирования:
Program Primer; Var a: array[1..8] of integer; M, k: integer;
Begin for k:=1 to 8 do readln(a[k]);M:=a[1]; for k:=2 to 8 Do if M<a[k] Then M:=A[k]; Write(m)
End.
Сколько раз будет исполнен подчеркнутый оператор при заданном массиве: 3, 8, 7, 9, 4, 10, 2, 12:
Чему будет равно значение М?
2. Чему будет равно значение переменной К после исполнения фрагмента программы
K:=1; while (a[K]<>X) and (K<=10) do K:=K+1;
(Здесь Х=7, а в качестве элементов массива введены числа: 2, 3, 5, 9, 12, 0, 7, 6, 7.)
3. При наборе программы вычисления суммы отрицательных элементов массива
for k:=1 to 8 do readln(a[k]); s:=0; for k:=1 to 8 do if a[k]<0 then s:=s+1; write(s)
была допущена ошибка. Каким оказался ответ, если были введены числа: -1, 3, -2, 4, -5, 6, -7, 8.
Каким должен был быть оператор и чему равен правильный ответ?
4. Дано тело подпрограммы:
begin
for k:=1 to 4 do for g:=1 to 4 do a[k,g]:=g-k;q:=0; for k:=1 to 4 do for g:=1 to 4 do if a[k,g]<0 then begin q:=q+1; b[q]:=a[k,g] end; m:=b[1]; for k:=1 to q do if m<b[k] then m:=b[k]; writeln(m);
end;
Опишите заголовок подпрограммы и необходимые локальные переменные. Какое число будет выведено после ее выполнения?
5. Основное различие между процедурами и функциями заключается в том, что:
в результате работы процедуры можно получить любое количество переменных, а функции - одно;
в процедуре допускается описание локальных переменных, а в функции - нет;
в программе обращение к процедуре может осуществляться многократно, тогда как к функции только один раз;
в процедуре допускается использование глобальных переменных, а в функции - нет.
6. Формальные параметры процедуры:
описываются в ее заголовке;
перечисляются при вызове процедуры;
указываются при описании данных в программе;
указываются при описании промежуточных переменных процедуры.
7. Фактические параметры процедуры:
описываются в ее заголовке;
перечисляются при вызове процедуры;
указываются при описании данных в программе;
указываются при описании промежуточных переменных процедуры.
8. Задача о выборах
Пусть шесть населенных пунктов, обозначенные номерами от 1 до 6 (величина k), а пять кандидатов - номерами от 1 до 5 (величина n). Количество голосов, набранных кандидатами в каждом пункте, определяется формулой ak=random(10i+50), где i - номер Вашего варианта. В результате получается таблица результатов голосования, где значения в строках - данные из населенных пунктов, а в столбцах - данные по конкретным кандидатам. Создайте в подпрограмме одномерный массив с искомыми данными в соответствии со своим вариантом.