Процедуры с числовыми параметрами

 

Proc1. Описать процедуру PowerA3(A, B), вычисляющую третью степень чис-

ла A и возвращающую ее в переменной B (A — входной, B — выходной

параметр; оба параметра являются вещественными). С помощью этой

процедуры найти третьи степени пяти данных чисел.

Proc2. Описать процедуру PowerA234(A, B, C, D), вычисляющую вторую,

третью и четвертую степень числа A и возвращающую эти степени со-

ответственно в переменных B, C и D (A — входной, B, C, D — выходные

параметры; все параметры являются вещественными). С помощью этой

процедуры найти вторую, третью и четвертую степень пяти данных чисел.

Proc3. Описать процедуру Mean(X ,Y ,AMean ,GMean), вычисляющую

среднее арифметическое AMean = (X +Y )/2 и среднее геометрическое

GMean= двух положительных чисел 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=a2 /4



Процедуры и функции



 

 

(a — входной, P и S — выходные параметры; все параметры являются ве-

щественными). С помощью этой процедуры найти периметры и площади

трех равносторонних треугольников с данными сторонами.

Proc5. Описать процедуру RectPS(x1, y1 , x2, y2, P, S), вычисляющую периметр P

и площадь S прямоугольника со сторонами, параллельными осям ко-

ординат, по координатам (x1, y1), (x2, y2) его противоположных вершин

(x1, y1, x2, y2— входные, 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 справа данные цифры D1 и D2,

выводя результат каждого добавления.

Proc9. Описать процедуру AddLeftDigit(D, K ), добавляющую к целому по-

ложительному числу K слева цифру D (D — входной параметр целого

типа, лежащий в диапазоне 1–9, K — параметр целого типа, являющийся

одновременно входным и выходным). С помощью этой процедуры после-

довательно добавить к данному числу K слева данные цифры D1 и D2,

выводя результат каждого добавления.

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



38


М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6

 

 

минимальное из значений X и Y, а в переменную Y — максимальное из

этих значений (X и Y — вещественные параметры, являющиеся одновре-

менно входными и выходными). Используя четыре вызова этой процеду-

ры, найти минимальное и максимальное из данных чисел A, B, C, D.


Proc12. Описать процедуру SortInc3(A, B, C), меняющую содержимое пере-

менных A, B, C таким образом, чтобы их значения оказались упорядочен-

ными по возрастанию (A, B, C — вещественные параметры, являющиеся

одновременно входными и выходными). С помощью этой процедуры упо-

рядочить по возрастанию два данных набора из трех чисел: (A1, B1, C1) и

(A2, B2, C2).

Proc13. Описать процедуру SortDec3(A, B, C), меняющую содержимое пере-

менных A, B, C таким образом, чтобы их значения оказались упорядо-

ченными по убыванию (A, B, C — вещественные параметры, являющиеся

одновременно входными и выходными). С помощью этой процедуры упо-

рядочить по убыванию два данных набора из трех чисел: (A1, B1, C1) и

(A2, B2, C2).

Proc14. Описать процедуру ShiftRight3(A, B, C), выполняющую правый цик-

лический сдвиг: значение A переходит в B, значение B — в C, значение C

— в A (A, B, C — вещественные параметры, являющиеся одновременно

входными и выходными). С помощью этой процедуры выполнить правый

циклический сдвиг для двух данных наборов из трех чисел: (A1, B1, C1) и

(A2, B2, C2).

Proc15. Описать процедуру ShiftLeft3(A, B, C), выполняющую левый цикли-

ческий сдвиг: значение A переходит в C, значение C — в B, значение B

— в A (A, B, C — вещественные параметры, являющиеся одновременно

входными и выходными). С помощью этой процедуры выполнить левый

циклический сдвиг для двух данных наборов из трех чисел: (A1, B1, C1) и

(A2, B2, C2).