По заданным значениям вычислить функцию - Turbo Pascal
Формулировка задачи:
Помогите, пожалуйста, люди добрые, завтра зачет нужно решить задачку на паскале
По заданным значениям X[20], Y[20] вычислить
Решение задачи: «По заданным значениям вычислить функцию»
textual
Листинг программы
type
TArray = Array[0..19] Of Real;
procedure RandomArray(var ar: TArray; const mes: String);
var
k: Byte;
begin
Write(mes, ':');
for k := 0 to 19 do
begin
ar[k] := Random() * 198 - 99;
Write(ar[k]:7:2);
end;
WriteLn;
end;
function SumXY(const x, y: TArray): Double;
var
k: Byte;
Result: Double;
begin
Result := 0;
for k := 1 to 15 do
Result := Result + x[k] * y[k];
SumXY := Result;
end;
function P(const z: TArray): Double;
var
k: Byte;
Result: Double;
begin
Result := 0;
for k := 0 to 19 do
Result := Result + Sqr(z[k]);
P := Result;
end;
var
x, y: TArray;
begin
Randomize();
RandomArray(x, 'X'); RandomArray(y, 'Y');
if (SumXY(x, y) > 0)
then
Write('P(x)=', P(x):0:3)
else
Write('P(y)=', P(y):0:3);
end.
Объяснение кода листинга программы
- Создаётся тип данных
TArray, представляющий массив из 20 элементов типаReal. - Создаётся процедура
RandomArray, которая принимает в качестве параметра массивarи строкуmes. В цикле от 0 до 19 вычисляется случайное число от 0 до 198 и записывается в соответствующий элемент массиваar. Затем выводится значение каждого элемента массива с помощью функцииWrite. - Создаётся функция
SumXY, которая принимает два массиваxиyи возвращает их сумму. В цикле от 1 до 15 вычисляется сумма элементов массивовxиy, умноженных друг на друга, и сохраняется в переменнойResult. В конце функция возвращает значениеResult. - Создаётся функция
P, которая принимает один массивzи возвращает его среднее значение. В цикле от 0 до 19 вычисляется квадрат каждого элемента массиваzи суммируется. Затем вычисляется среднее значение, равное сумме, делённой на количество элементов. В конце функция возвращает значение среднего. - Создаётся переменная
xи инициализируется случайным числом от 0 до 198. - Создаётся переменная
yи инициализируется случайным числом от 0 до 198. - Вызывается процедура
RandomArrayдля инициализации массивовxиyслучайными числами. - Вычисляется сумма
xиyс помощью функцииSumXY. - Вычисляется среднее значение
zс помощью функцииP. - Выводится результат в зависимости от значения суммы
xиy. - Программа завершается.