- •Утверждено на заседании кафедры ксу
- •Пример составления программы
- •Блок – схема
- •1.2. Вопросы для контроля:
- •Задания к лабораторной работе №2
- •Контрольная работа № 3 итерационные вычислительные процессы
- •1.1. Теоретическая часть
- •1.2. Задания к контрольной работе № 3
- •Контрольная работа № 4.
- •Блок – схема
- •1.2.Вопросы для контроля
- •Контрольная работа № 5 обработка двумерных массивов (матриц)
- •1.1. Теоретическая часть
- •1.2. Вопросы для контроля
- •1.3. Задание к контрольной работе №5
- •Контрольная работа № 6 использование функций пользователя
- •1.2. Вопросы для контроля:
- •1.3.Задание к контрольной работе № 6
- •Контрольная работа № 7
- •1.1. Теоретическая часть.
- •1.2. Вопросы для контроля:
- •1.3. Задание к контрольной работе № 7
- •Контрольная работа № 8
- •1.1. Теоретическая часть.
- •1.2. Вопросы для контроля
- •1.3.Задание к контрольной работе № 8
- •Контрольная работа №9 создание и обработка графических изображений
- •Вопросы для контроля
- •Задание к контрольной работе №9
- •2. Графическое обозначение блоков в схемах алгоритмов
Контрольная работа № 7
ИСПОЛЬЗОВАНИЕ ПОДПРОГРАММ
1.1. Теоретическая часть.
Если требуются вычисления по определенной формуле или формулам и при этом в решаемой задаче они повторяются многократно, при программировании целесообразно эти вычисления оформлять в виде подпрограммы.
Для входа в подпрограмму используется оператор GOSUB <nс>. Он указывает адрес входа в подпрограмму по номеру <nс> её программной строки. Тело подпрограммы находится между строкой с номером <nс> и первым оператором RETURN и может располагаться в любом месте основной программы.
Подпрограмма выполняется до ограничивающего её оператора RETURN, определяющего возврат из подпрограммы в основную программу. Возврат осуществляется либо к оператору, следующему за GOSUB, если используется оператор RETURN( без указания номера строки возврата), либо к строке, указанной в параметре <nс> оператора RETURN <nс>.
Пример:
10 INPUT A (A=2)
20 GOSUB 50
30 PRINT “B=”;B
40 STOP
50 B=2*A
60 RETURN
70 END
RUN
B=4
1.2. Вопросы для контроля:
Между какими операторами помещается тело подпрограммы?
Как действуют операторы RETURN и RETURN <nc>?
В каком месте основной программы может располагаться подпрограмма?
1.3. Задание к контрольной работе № 7
Вариант
|
Задание |
|
Составить схему алгоритма и программу решения задачи с использованием программы - процедуры. Предусмотреть вывод исходных данных и результатов. |
1. |
Определить сумму S элементов целого массива А, размерности 12, расположенных за 3 - м отрицательным элементами разделить полученную сумму на 12! (факториал). 12! Вычислять с помощью подпрограммы процедуры. |
2. |
Дана матрица М размерности 55. Определить сумму элементов всей матрицы от М(2,2) до М95,40, если первая строка имеет меньше 2 - х элементов. Определение суммы осуществить с помощью подпрограммы процедуры. |
3. |
В двумерном массиве найти строку с наименьшим произведением элементов. Размерность массива 56. Произведение определять с помощью подпрограммы – процедуры. |
4. |
Дан массив из 10 чисел. Вычислить, сколько элементов в массиве превышают число А, найти максимальный элемент массива и его номер. Максимальный элемент находить в подпрограмме - процедуре. |
5. |
Даны целые числа А и массив х, х,…х. Если в последовательности х есть два элемента равных А, то получить сумму элементов, следующих за вторым таким элементом, в противном случае определить сумму всех элементов массива х. Сумму вычислить использую подпрограмму - процедуру. |
6. |
Дана целая квадратная матрица А порядка 9. В строках которые начинаются с отрицательных элементов, найти суммы элементов расположенных выше главной диагонали. (используя для вычисления суммы подпрограммы - процедуру). |
7. |
Дана матрица М размерностью 66. Строки матрицы содержащие отрицательные упорядочить по возрастанию, остальные по убыванию. Эти действия производить в подпрограмм - процедуре. |
8. |
В квадратной матрице А размерностью 55. Найти максимальный элемент среди минимальных по строкам. Поиск минимальных элементов осуществлять с помощью подпрограммы - процедуры. |
9. |
В двумерном массиве А(7,7) переставить местами строку, в которой находится наибольшее количество отрицательных элементов, со строкой, в которой находится наименьшее количество отрицательных элементов. Подсчет отрицательных элементов производится в подпрограмме – процедуре.
|
10. |
Составить программу, заменяющую нулевые элементы одного массива очередным в порядке возрастания индексов элементами второго. Образовать третий массив, элементами которого являются суммы соответствующих элементов первого и второго массивов. Эту операцию выполнить в подпрограмме - процедуре.
|
11. |
Вычислить значение функции Z = XY(S+S) Где – сумма и количество массива а,а,…a. S2 и K2 - сумма и количество положительных элементов массива b, b,…b. Для вычисления S, S, K,K, использовать подпрограмму - процедуру.
|
12. |
В двумерном массиве А размерности 55 найти строку с наименьшим количеством нулевых элементов. Определить сумму элементов этой строки, используя подпрограмму – процедуру.
|
13. |
В заданной матрице Х размером 45. Определить сумму максимальных значений каждой строки и посчитать количество отрицательных элементов в каждой строке, используя подпрограмму - процедуру.
|
14. |
Дана квадратная матрица А размерностью 5. Расположить элементы каждой строки заданной матрицы по убыванию. В полученной матрице найти максимальный элемент среди элементов, расположенных на главной диагонали используя подпрограмму - процедуру. |
15. |
Дан массив из 10чмсел. Найти максимальный элемент среди отрицательных элементов. Поменять местами максимальный и последний элементы. Максимальный элемент находить в программе - процедуры. |
16. |
Даны две квадратные матрицы А и В размерностью 55. Получить две последовательности х={х, х,…х} и у={у, у,…у}, компонентами которых являются: а) для х- наибольшее из значений к-ой строки матрицы А; в) для у - число отрицательных элементов в каждой строке матрицы В; поиск наибольшего элемента производить в подпрограмме - процедуре. |
17. |
В матрице А размерностью 55 найти наибольший элемент среди элементов главной диагонали и заменить им все отрицательные элементы. Посчитать количество замен. Поиск наибольшего элемента производить в программе - процедуре. |
18. |
Задан численный массив а, а,… а. Наименьший элемент массива заменить среднеарифметического всех элементов массива. Среднее арифметическое вычислять с помощью программы - процедуры. |
19. |
В матрице В размерностью 55, найти строку с наименьшим произведением элементов. Произведение вычислять с помощью программы - процедуры. |
20. |
Дан одномерный массив из 10чисел. Вычислить произведение положительных элементов массива. Найти максимальный элемент массива и заменить им все отрицательные элементы. Максимальный элемент находить с помощью программы – процедуры. |
21. |
Дан массив из 15 чисел. Если в массиве больше 3-х отрицательных чисел, вычислить среднее арифметическое этого массива, если меньше - вычислить сумму положительных чисел и разделить её на максимальный элемент. Вычисление суммы производить в программе – процедуре. |
22. |
Дан массив чисел из 10 элементов. Найти максимальный и минимальный элементы массива и поменять их местами. Найти среднее арифметическое положительных элементов массива с помощью подпрограммы - процедуры. |
23. |
Дан массив из 20 чисел. Найти второй отрицательный элемент в массиве и вычислить сумму элементов - перед ним. Если такого элемента нет, вывести соответствующее сообщение. Сумму вычислять в подпрограмме - процедуры. |
25. |
Задан двумерный массив чисел А размерностью 66. Вычислить сумму и количество элементов стоящих между максимальным и минимальным элементами матрицы. Сумму и количество вычислять в подпрограмме-процедуре. |
26. |
Дан одномерный массив чисел Х размерностью 15 если в массиве больше положительных элементов, то вычислять сумму всех элементов массива, если же больше отрицательных, то вычислить сумму первых 10 элементов. Для вычисления суммы использовать подпрограмму - процедуру. |
27. |
Дана матрица Z размерностью 66. Образовать одномерный массив Р размерности 6, каждым элементом которого является произведение элементов столбцов матрицы Z. Найти в нем максимальный элемент. Вычислить произведение с помощью подпрограммы - процедуры. |
28. |
В двумерном массиве R размерностью 65 вычислять произведения тех строк, которые начинаются с положительных элементов и суммы элементов тех строк, которые начинаются с отрицательных элементов. Вычисление суммы и произведения производить в подпрограмме – процедуре. |
29. |
Задан двумерный массив чисел Х размерностью 54. Найти строку с наименьшим элементом массива и вычислить произведение ее отрицательных элементов и их количество. Произведение и количество отрицательных элементов производить с помощью подпрограммы - процедуры. |
30. |
Задан двумерный массив чисел В размерностью 66. Вычислить три суммы: элементов, расположенных на главной диагонали, над ней и под ней. Определить наибольшую из этих сумм. Суммы определять в подпрограмме - процедуре. |
31. |
Заданны два одномерных массива чисел А размерностью 10 и В размерностью 15. Вычислить сумму максимальных элементов этих массивов и произведение их минимальных элементов. Вычисление максимальных и минимальных элементов производить в подпрограмме - процедуре. |
32. |
Заданны три одномерных массива А, В, С размерностью 12. Вычислять сумму всех элементов массива, если в нем больше трех отрицательных элементов, сумму первых 10-ти элементов, если в нем меньше 3-х отрицательных элементов, и сумму первых 7 элементов, если в нем нет отрицательных элементов. Вычисление суммы производить в подпрограмме – процедуре. |
33. |
Задан двумерный массив чисел Z размерностью 55. Образовать новый массив А элементами которого являются максимальные элементы столбцов массива Z. Используя подпрограмму - процедуру вычислить сумму и произведение элементов массива А. |
34. |
Задан двумерный массив чисел Д размерностью 66. Найти минимальный элемент среди элементов главной диагонали и посчитать сумму и количество отрицательных элементов столбца, в котором находится этот минимальный элемент. Сумму и количество вычислять в подпрограмме - процедуре. |
35. |
В квадратной матрице С размерностью 55 поменять местами столбец, в котором находится минимальный элемент. Максимальный и минимальный элементы найти с помощью подпрограммы – процедуры. |
36. |
Заданы два одномерных массива чисел Р и R размерностью 10. Вычислить суммы положительных элементов этих массивов и их количество. В массиве с большей суммой элементов поменять местами максимальный и минимальный элементы. Вычисление суммы и количества производить в подпрограмме – процедуре. |
37. |
Задана матрица Z размерностью 56. Переставить столбцы матрицы таким образом, чтобы они располагались в порядке возрастания в них количества отрицательных элементов. Подсчет количества отрицательных элементов производить в подпрограмме – процедуре. |
38. |
Задан одномерный массив А из 15чисел. Вычислить сумму и количество элементов расположенных между первым и последним отрицательными числами массива. Упорядочить элементы массива в порядке возрастания. Сумму и количество вычислять в подпрограмме - процедуре.
|
39. |
Заданны две квадратные матрицы А и В размерностью 33. В матрице, у которой больше произведение элементов главной диагонали поменять местами строки и столбцы, в другой матрице поменять местами строки и столбцы, в другой матрице поменять местами 1-й и 3-й столбцы. Произведение элементов вычислять в подпрограмме - процедуре. |
40. |
Задана матрица чисел Д размерностью 56. Строки, в которых количество отрицательных элементов больше 2-х упорядочить по убыванию, остальные - по возрастанию. Количество отрицательных элементов подсчитать в подпрограмме – процедуре. |
41. |
Задана матрица G размерностью 45. В каждом столбце матрицы найти максимальный элемент и заменить им отрицательные элементы этого столбца. Максимальный элемент находить с помощью подпрограммы - процедуры. |
42. |
Задан одномерный массив чисел Е(16). Образовать массив А, элементами которого будут разности соседних четных элементов массива Е. В массиве А посчитать сумму и количество положительных элементов, используя подпрограмму – процедуру. |
43. |
Дан вещественный массив чисел из 15 элементов. Вычислить разность между максимальным и минимальными элементами в массиве и разделить ее на произведение элементов, расположенных между ними. Произведение вычислять в подпрограмме - процедуре. |
44. |
Дан одномерный массив чисел из 10 элементов. Вычислить среднее арифметическое положительных элементов массива и количество элементов больших этого среднего. Упорядочить массив по возрастанию. Среднее арифметическое вычислять в подпрограмме - процедуре. |
45. |
В двумерном массиве Z(5,6) переставить местами столбец, в котором находится наибольшее количество нулевых элементов со столбцом, в котором находится наименьшее количество нулевых элементов. Подсчет нулевых элементов производится в подпрограмме - процедуре. |
46. |
В двумерном массиве А(4,5) найти столбец с наименьшим произведением элементов и упорядочить ее по убыванию. Произведение вычислять в подпрограмме - процедуре. |
47. |
Задан одномерный массив чисел В (12). Если в массиве меньше четырех отрицательных чисел, вычислить среднее арифметическое этого массива, если больше вычислить произведение положительных чисел и разделить его на минимальный элемент. Подсчет количества отрицательных чисел производить в подпрограмме - процедуре. |
48. |
Дана матрица Х 35. Вычислить произведение и количество положительных элементов столбцов матрицы. Столбец, в котором наибольшее количество положительных элементов переставить на место 1-го столбца. Произведение и количество вычислять в подпрограмме - процедуре. |
49. |
Задан одномерный массив чисел D(10). Вычислить сумму и количество элементов, стоящих после 1-го отрицательного элемента. Если их меньше 5, упорядочить элементы массива по убыванию, если больше 5-ти - по возрастанию. Сумму и количество вычислять в подпрограмме - процедуре. |
50. |
Задана матрица R (55). Вычислить среднее арифметическое элементов матрицы, расположенных ниже главной диагонали и максимальный элемент среди элементов главной диагонали. Строку, где находится максимальный элемент поменять местами с первой строкой матрицы. Среднее арифметическое вычислять в подпрограмме - процедуре. |