Процедуры и функции
Процедуры с числовыми параметрами
Proc1. Описать процедуру PowerA3(A, B), вычисляющую третью степень чис-
ла A и возвращающую ее в переменной B (A — входной, B — выходной
параметр; оба параметра являются вещественными). С помощью этой
процедуры найти третьи степени пяти данных чисел.
Proc2. Описать процедуру PowerA234(A, B, C, D), вычисляющую вторую,
третью и четвертую степень числа A и возвращающую эти степени со-
ответственно в переменных B, C и D (A — входной, B, C, D — выходные
32
М. Э. Абрамян. Электронный задачник Programming Taskbook 4.5
параметры; все параметры являются вещественными). С помощью этой
процедуры найти вторую, третью и четвертую степень пяти данных чисел.
Proc3. Описать процедуру Mean(X, Y, AMean, GMean), вычисляющую
среднее арифметическое AMean = (X +Y )/2 и среднее геометрическое
GMean =
√
X ·Y двух положительных чисел X и Y (X и Y — входные,
AMean и GMean — выходные параметры вещественного типа). С помощью
этой процедуры найти среднее арифметическое и среднее геометрическое
для пар (A, B), (A, C), (A, D), если даны A, B, C, D.
Proc4
◦
. Описать процедуру TrianglePS(a, P, S), вычисляющую по стороне a
равностороннего треугольника его периметр P = 3·a и площадь S = a
2
·
√
3/4
(a — входной, P и S — выходные параметры; все параметры являются ве-
щественными). С помощью этой процедуры найти периметры и площади
трех равносторонних треугольников с данными сторонами.
Proc5. Описать процедуру RectPS(x
1
, y
1
, x
2
, y
2
, P, S), вычисляющую периметр P
и площадь S прямоугольника со сторонами, параллельными осям ко-
ординат, по координатам (x
1
, y
1
), (x
2
, y
2
) его противоположных вершин
(x
1
, y
1
, x
2
, y
2
— входные, P и S — выходные параметры вещественного ти-
па). С помощью этой процедуры найти периметры и площади трех пря-
моугольников с данными противоположными вершинами.
Proc6. Описать процедуру DigitCountSum(K, C, S), находящую количество C
цифр целого положительного числа K, а также их сумму S (K — входной,
C и S — выходные параметры целого типа). С помощью этой процедуры
найти количество и сумму цифр для каждого из пяти данных целых чисел.
Proc7. Описать процедуру InvertDigits(K), меняющую порядок следования
цифр целого положительного числа K на обратный (K — параметр целого
типа, являющийся одновременно входным и выходным). С помощью этой
процедуры поменять порядок следования цифр на обратный для каждого
из пяти данных целых чисел.
Proc8
◦
. Описать процедуру AddRightDigit(D, K), добавляющую к целому по-
ложительному числу K справа цифру D (D — входной параметр целого
типа, лежащий в диапазоне 0–9, K — параметр целого типа, являющийся
одновременно входным и выходным). С помощью этой процедуры после-
довательно добавить к данному числу K справа данные цифры D
1
и D
2
,
выводя результат каждого добавления.
Proc9. Описать процедуру AddLeftDigit(D, K), добавляющую к целому по-
ложительному числу K слева цифру D (D — входной параметр целого
Процедуры и функции
33
типа, лежащий в диапазоне 1–9, K — параметр целого типа, являющийся
одновременно входным и выходным). С помощью этой процедуры после-
довательно добавить к данному числу K слева данные цифры D
1
и D
2
,
выводя результат каждого добавления.
Proc10. Описать процедуру Swap(X, Y ), меняющую содержимое перемен-
ных X и Y (X и Y — вещественные параметры, являющиеся одновременно
входными и выходными). С ее помощью для данных переменных A, B,
C, D последовательно поменять содержимое следующих пар: A и B, C
и D, B и C и вывести новые значения A, B, C, D.
Proc11. Описать процедуру Minmax(X, Y ), записывающую в переменную X
минимальное из значений X и Y, а в переменную Y — максимальное из
этих значений (X и Y — вещественные параметры, являющиеся одновре-
менно входными и выходными). Используя четыре вызова этой процеду-
ры, найти минимальное и максимальное из данных чисел A, B, C, D.
Proc12. Описать процедуру SortInc3(A, B, C), меняющую содержимое пере-
менных A, B, C таким образом, чтобы их значения оказались упорядочен-
ными по возрастанию (A, B, C — вещественные параметры, являющиеся
одновременно входными и выходными). С помощью этой процедуры упо-
рядочить по возрастанию два данных набора из трех чисел: (A
1
, B
1
, C
1
) и
(A
2
, B
2
, C
2
).
Proc13. Описать процедуру SortDec3(A, B, C), меняющую содержимое пере-
менных A, B, C таким образом, чтобы их значения оказались упорядо-
ченными по убыванию (A, B, C — вещественные параметры, являющиеся
одновременно входными и выходными). С помощью этой процедуры упо-
рядочить по убыванию два данных набора из трех чисел: (A
1
, B
1
, C
1
) и
(A
2
, B
2
, C
2
).
Proc14. Описать процедуру ShiftRight3(A, B, C), выполняющую правый цик-
лический сдвиг: значение A переходит в B, значение B — в C, значение C
— в A (A, B, C — вещественные параметры, являющиеся одновременно
входными и выходными). С помощью этой процедуры выполнить правый
циклический сдвиг для двух данных наборов из трех чисел: (A
1
, B
1
, C
1
) и
(A
2
, B
2
, C
2
).
Proc15. Описать процедуру ShiftLeft3(A, B, C), выполняющую левый цикли-
ческий сдвиг: значение A переходит в C, значение C — в B, значение B
— в A (A, B, C — вещественные параметры, являющиеся одновременно
входными и выходными). С помощью этой процедуры выполнить левый
34
М. Э. Абрамян. Электронный задачник Programming Taskbook 4.5
циклический сдвиг для двух данных наборов из трех чисел: ( A
1
, B
1
, C
1
) и
( A
2
, B
2
, C
2
).
Достарыңызбен бөлісу: |