Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

II. Работа с одномерным и двумерным массивами



  1. Составить программу, записывающую все положительные элементы двумерного массива А в одномерный массив В, а отрицательные - в одномерный массив С. Вывести полученные массивы на экран. Используйте подпрограммы для решения каждой частной задачи.
  2. Дан двумерный массив. Сформировать одномерный массив путем деления положительных элементов заданной таблицы на число К. Вывести полученный массив на экран. Используйте подпрограммы для решения каждой частной задачи.
  3. Вычислите сумму элементов, находящихся на пересечении текущей строки и двух диагоналей двумерного квадратного массива, и запишите их в одномерный массив. Найдите наибольший из этих элементов. (Элементами i-й строки, лежащими на диагоналях, являются ai,j и ai,n-j+1). Используйте подпрограммы для решения каждой частной задачи.
  4. Дан двумерный массив. Заполнить одномерный массив суммами элементов строк, вывести полученную информацию на экран и номера строк, в которых сумма наименьшая. Используйте подпрограммы для решения каждой частной задачи.
  5. Дан двумерный массив. Заполнить одномерный массив наименьшими значениями элементов строк, вывести полученную информацию на экран и номера строк, в которых значения наименьшие. Используйте подпрограммы для решения каждой частной задачи.
  6. Дан двумерный массив. Заполнить одномерный массив разностями наибольших и наименьших значений элементов строк, вывести полученную информацию на экран и номера строк, в которых разности одинаковые. Используйте подпрограммы для решения каждой частной задачи.
  7. Для данного двумерного массива вычислите и запомните в другом двумерном массиве сумму и число положительных элементов каждого столбца заданного двумерного массива. Используйте подпрограммы для решения каждой частной задачи.
  8. Для данного двумерного массива вычислите и запомните в другом двумерном массиве сумму и число положительных элементов каждой строки и расположенных не ниже главной диагонали заданного двумерного массива. Используйте подпрограммы для решения каждой частной задачи.
  9. Из предложенного одномерного массива размерностью S сформируйте двумерный массив так, чтобы первая строка новой таблицы содержала бы четные по номеру элементы исходного массива, а вторая - нечетные. Предусмотрите случай нечетности S. Используйте подпрограммы для решения каждой частной задачи.
  10. Дан произвольный двумерный массив. Занести в другой двумерный массив в каждую строку следующую информацию о повторяющихся элементах: на первое место сам элемент, далее двузначные числа, первая цифра которых является индексом строки, вторая - индексом столбца всех совпадающих элементов. Используйте подпрограммы для решения каждой частной задачи.
  11. Для целочисленного двумерного массива найти для каждой строки число элементов, кратных 5, запишите информацию в одномерный массив и найдите наибольший из полученных результатов. Используйте подпрограммы для решения каждой частной задачи.

Дополнительные задачи (на усмотрение учителя)

  1. Заполните одномерный массив произведениями элементов строк заданного двумерного массива и выведите его на экран. Найдите сумму этих произведений. Используйте подпрограммы для решения каждой частной задачи.
  2. Заполните одномерный массив положительными элементами, расположенные на главной диагонали заданного квадратного массива. Выведите полученный массив на экран и найдите произведение элементов. Используйте подпрограммы для решения каждой частной задачи.
  3. Дан двумерный квадратный массив. Вычислить сумму тех его элементов, расположенных на главной диагонали и выше нее, которые превосходят по величине все элементы, расположенные ниже главной диагонали. Если на главной диагонали и выше нее нет элементов с указанным свойством, то выдайте соответствующее сообщение. Используйте подпрограммы для решения каждой частной задачи.
  4. Дан двумерный квадратный массив. Найти номера строк, все элементы которых равны нулю. Используйте подпрограммы для решения каждой частной задачи.
  5. Дан двумерный квадратный массив. Найти номера строк, элементы в каждой из которых одинаковы между собой. Используйте подпрограммы для решения каждой частной задачи.
  6. Дан двумерный квадратный массив. Найти номера строк, все элементы которых четны. Используйте подпрограммы для решения каждой частной задачи.
  7. Сколько в произвольном двумерном массиве содержится различных элементов? Занесите их в одномерный массив и выведите на экран. Используйте подпрограммы для решения каждой частной задачи.
  8. Дан двумерный массив. Найти наибольший и наименьший элементы массива и,чередуя, заполнить ими одномерный массив заданной размерности. Используйте подпрограммы для решения каждой частной задачи.
  9. Дан двумерный квадратный массив. В каждой строке двумерного массива наибольший элемент и элемент главной диагонали поменять местами, а их среднее арифметическое занести в одномерный массив. Вывести на экран полученный массив и среднее арифметическое его элементов. Используйте подпрограммы для решения каждой частной задачи.
  10. Дан двумерный квадратный массив. В каждой строке двумерного массива наибольший элемент поместить на место первого элемента массива, а наименьший элементы - на место последнего. Создать одномерный массив, элементы которого являются суммой этих элементов. Вывести на экран полученный массив и сумму его элементов. Используйте подпрограммы для решения каждой частной задачи.
  11. Определить минимальный элемент двумерного массива. Напечатать номер строки, содержащей максимальное число минимальных элементов, если такие имеются. Используйте подпрограммы для решения каждой частной задачи.
  12. В двумерном массиве Х все числа различны. В каждой строке выбирается минимальный элемент, затем среди этих чисел выбирается максимальное. Напечатать номер строки массива Х, в которой расположено выбранное число.
  13. Дан двумерный массив. Найти наибольшее из значений элементов первой и последней строки. Используйте подпрограммы для решения каждой частной задачи.
  14. Дан двумерный массив. Найдите сумму наибольших значений элементов его строк. Используйте подпрограммы для решения каждой частной задачи.
  15. Дан двумерный массив. Найдите строку с наибольшей суммой элементов и наименьшей. Вывести на экран найденные строки и суммы их элементов. Используйте подпрограммы для решения каждой частной задачи.
  16. Составьте программу нахождения седловой точки таблицы. Седловой точкой называется элемент, являющийся одновременно максимальным в столбце и минимальным в строчке. Используйте подпрограммы для решения каждой частной задачи.
  17. Дан двумерный квадратный массив. В строках с отрицательным элементом на главной диагонали найти сумму всех элементов и наибольший из всех элементов. Используйте подпрограммы для решения каждой частной задачи.
  18. Дан двумерный массив. Найдите сумму элементов столбца и строки массива, на пересечении которых находится максимальный элемент. Используйте подпрограммы для решения каждой частной задачи.
  19. Дан двумерный массив. Найдите сумму минимальных элементов диагоналей массива. Используйте подпрограммы для решения каждой частной задачи.
  20. Дан двумерный массив. Преобразовать его по следующему правилу: строку с номером N сделать столбцом с номером N, а столбец - строкой.
  21. Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (a).
  22. Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (b).
  23. Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (c).
  24. Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (d).
  25. Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (e).
  26. Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (f).
  27. Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (g).
  28. Дан двумерный массив. Найти наибольшее из значений элементов, расположенных в заштрихованной части (k).
  29. * "Магическим" квадратом называется квадратная таблица целых чисел от 1 до N, расположенных так, что суммы элементов каждой строки, каждого столбца и обеих диагоналей одинаковы и равны (1/2)*N*(1+N)2.Построить "магический" квадрат для N=3, N=4, N=5.
  30. * Построить и вывести на экран "латинский" квадрат - таблицу, состоящую из 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 - номер Вашего варианта. В результате получается таблица результатов голосования, где значения в строках - данные из населенных пунктов, а в столбцах - данные по конкретным кандидатам. Создайте в подпрограмме одномерный массив с искомыми данными в соответствии со своим вариантом.





Дата публикования: 2015-10-09; Прочитано: 915 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...