Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические указания №825.doc
Скачиваний:
21
Добавлен:
12.03.2015
Размер:
449.02 Кб
Скачать

Область действия параметров

Все объекты (метки, константы, типы, переменные, процедуры и функции), которые описываются после заголовка подпрограммы, называются локальными объектамии доступны только в пределах этой подпрограммы, но недоступны вызывающей программе. Эти объекты создаются при входе в подпрограмму и уничтожаются при выходе из нее.

Все объекты, описанные в вызывающей программе, называются глобальными. Они доступны внутри подпрограмм, вызываемых этой программой. Поэтому обмен данными между программой и вызываемой ею подпрограммой может производиться и через глобальные переменные.

В Турбо Паскале допускается любой уровень вложенности процедур и функций. Процедура, описанная в основной программе, может иметь описания внутренних процедур и функций и так далее. При этом объекты, описанные в вызывающей процедуре, являются глобальными по отношению к вызываемой процедуре.

Например, пусть структура блоков некоторой Паскаль-программы схематически может быть изображена таким образом:

Блок а – основная программа

Блок В - подпрограмма

Блок Е - подпрограмма

Блок С - подпрограмма

Блок D - подпрограмма

Блок F - подпрограмма

О

Блок В - подпрограмма

бъекты, описанные в блоке В, известны (видимы), кроме самого блока В, еще и в блокахCиD, но невидимы в блоке А. Объекты, описанные в блокеF, известны только в пределах этого блока.

3. Задачи для контрольной работы

Задача 1

Составить блок - схему алгоритма, написать программу на Паскале, вычислить значения переменных по заданным расчетным формулам и наборам данных:

№ варианта

Расчетные формулы

Данные

1

2

3

0

a = 3.6

x = 0.7

1

c = 2.4

x = -3.5

2

b = 26.3

x = 2.5

3

c = 16.7

x = 1.4

4

c = 13.4

x = 1.5

5

c = 5.6

x = -2.4

6

a = 0.6

x = 2.4

7

a = 5.6

x = -1.2

1

2

3

8

m = 2.1

c = -1.1

t = 1.5

b = 1.9

9

a = 2.1

b = 0.02

x = 0.4

10

c = 0.35

x = 1.44

Задача 2.

Составить программу, которая по заданным x и y определяет, принадлежит ли точка М(x, y) заштрихованной области.

Вариант 0

Вариант 1

y

В ариант 2

Вариант 3

Вариант 4

Вариант 5

В

y

ариант 6

1

1

-1

x

-1

Вариант 7

Вариант 8

Вариант 9

x

В ариант 10

Задача 3.

Даны натуральное число n и последовательность целых чисел а1, а2, ... , аn. Составить блок-схему алгоритма, написать программу и провести вычисления в соответствии с заданием.

Вариант 0. Найти количество и сумму тех членов последовательности, которые делятся на 5 и не делятся на 3.

Вариант 1. Найти количество и удвоенную сумму всех положительных членов последовательности.

Вариант 2. Заменить все большие семи члены последовательности числом 7. Найти количество таких членов.

Вариант 3. Получить сумму отрицательных и количество положительных членов последовательности

Вариант 4. Все неотрицательные члены последовательности заменить на единицу. Найти количество и сумму отрицательных членов последовательности.

Вариант 5. Все члены последовательности, меньше двух, заменить нулями. Получить сумму и число членов последовательности, принадлежащих отрезку [3, 10].

Вариант 6.Все отрицательные члены последовательности уменьшить на 2, а все неотрицательные заменить на 1.

Вариант 7. Получить произведение членов последовательности, кратных шести. Найти количество таких членов.

Вариант 8. Найти количество членов последовательности, модуль которых при делении на 3 дает в остатке 1. Заменить эти элементы нулями.

Вариант 9. Определить количество и сумму членов последовательности, имеющих четные порядковые имена и являющихся нечетными числами.

Вариант 10. Определить количество тех членов последовательности, которые нечетны и отрицательны. Найти сумму членов последовательности, кратных 5.

Задача 4.

Дана действительная матрица А размера m x n. Составить блок-схему алгоритма, написать программу и провести вычисления в соответствии с заданием.

Вариант 0.Найти среднее арифметическое наибольшего и наименьшего элементов матрицы А.

Вариант 1. Провести нормирование элементов по строкам, разделив элементы i-ой строки (i =1, 2, ... , m) на , проводя анализ на возможность равенства нулю этой величины, не производя в этом случае нормирование.

Вариант 2. Найти сумму наибольших значений элементов строк матрицы А.

Вариант 3.Найти сумму элементов строки, в которой расположен элемент с наименьшим значением. Предполагается, что такой элемент единственный.

Вариант 4. Получить новую матрицу путем деления всех элементов матрицы А на ее наибольший по модулю элемент.

Вариант 5.Найти среднее арифметическое каждого из столбцов матрицы А.

Вариант 6. Найти среднее арифметическое каждого из столбцов, имеющих четные номера.

Вариант 7. Найти наименьшие значения элементов каждой строки матрицы А.

Вариант 8. Поменять местами строку, содержащую наибольший элемент, со строкой, содержащий наименьший элемент. Предполагается, что эти элементы единственны.

Вариант 9. Преобразовать элементы матрицы по правилу: отрицательные элементы заменить на –1, положительные – на 1, а нулевые оставить без изменения.

Вариант 10. Найти разности наибольших и наименьших элементов каждой строки матрицы А.

Задача 5.

Составить блок-схему решения задачи, написать программу с использованием подпрограммы (процедуры или функции) и провести расчет в соответствии с заданием.

Вариант 0. Даны действительные числа a, b, c. Получить

max(a2 +b2).

Вариант 1. Даны действительные числа a, b. Получить

U = min (a, b),  = min (ab, a+b), min (u+2, ).

Вариант 2. Даны натуральные числа n, m и целые числа a1, ... , an, b1, ... , bm. Получить

min (a1, ... , an) + min (b1, ... , bm).

Вариант 3. Даны натуральные числа n, m и целые числа a1, ... , an, b1, ... , bm. Получить

Вариант 4. Даны действительные числа s, t. Получить

f (t, -2s, 1,17) + f (2,2, t, s-t),

где

Вариант 5. Даны натуральные числа n, m и целые числа a1, ... , an, b1, ... , bm. Получить

Вариант 6. Даны действительные числа a, b, c. Получить

.

Вариант 7. Даны действительные числа s, t. Получить

g (1,2, s) + g (t, s) – g (2s –1, st),

где

Вариант 8. Даны действительные числа x, y, z. Получить

f (xy, yz, x+y+z) + 2f (x-y, y-z, x-z),

где

Вариант 9. Даны действительные числа x, y. Получить

h (x, y) + h2 (x-y), xy), h4 (x-y, x+y) + h (1, 1),

где

Вариант 10. Даны натуральные числа n, m и целые числа a1, ... , an, b1, ... , bm. Получить

1+ (max (a1, ... , an))2 + (max (b1, ... , bm))2.