Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

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




  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:

  • 7;
  • 8;
  • 4;
  • 1.

Чему будет равно значение М?

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 - номер Вашего варианта. В результате получается таблица результатов голосования, где значения в строках - данные из населенных пунктов, а в столбцах - данные по конкретным кандидатам. Создайте в подпрограмме одномерный массив с искомыми данными в соответствии со своим вариантом.

  1. Какое количество голосов было подано за первого и второго кандидатов во всех населенных пунктах? У кого из второго, четвертого и пятого кандидатов наивысший рейтинг?
  2. В каких населенных пунктах второй и четвертый кандидаты набрали максимальное количество голосов? Кто набрал максимальное, а кто минимальное количество голосов в первом населенном пункте?
  3. Сколько избирателей приняли участие в голосовании в каждом из населенных пунктов? В каких населенных пунктах первый и пятый кандидаты набрали больше 100 голосов?
  4. Кто из кандидатов имеет максимальный рейтинг? В каких населенных пунктах количество участников выборов не превысило 450?
  5. Кто из кандидатов набрал максимальное количество голосов во втором населенном пункте? У кого из кандидатов рейтинг больше некоторого заданного числа р?
  6. В каких населенных пунктах количество опрошенных больше некоторого заданного числа р? Какие кандидаты набрали минимальное количество голосов в каждом из населенных пунктов?
  7. За кого из кандидатов подано количество голосов меньше некоторого заданного числа р? Какие кандидаты набрали максимальное и минимальное количество голосов во втором и пятом населенных пунктах?
  8. В каких населенных пунктах первый кандидат набрал максимальное количество голосов? У кого из кандидатов наименьший рейтинг?
  9. В каком населенном пункте проголосовало наибольшее количество людей? У кого из кандидатов рейтинг превысил некоторое заданное число р?
  10. Кто из кандидатов набрал наибольшее количество голосов во втором и третьем населенных пунктах? В каких населенных пунктах третий кандидат набрал максимальное количество голосов?
  11. В каком населенном пункте первый кандидат набрал минимальное количество голосов, а в каком максимальное? Определить номера населенных пунктов, где количество поданных голосов превысило 150.

Для любопытных

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...