Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Лабораторная работа № 6
Тема: Подпрограммы.
Вариант № 22
Задание. Составить программу на языке Паскаль для вычисления значения функции y = f (x) в точках x при заданных значениях a. Нахождение значения функции f(x) при заданных значениях а оформить в виде подпрограммы. Результат вывести в виде двумерной таблицы.
22 |
Решение. 1. Блок-схема решения представлена на рисунке.
a) Блок-схема алгоритма основной программы PR5
Начало
i=1,n
j=1,m
A
Ввод n, m
Ввод a
Ввод x
Рисунок 6.1
P
i=1,m
i=1,n;j=1,m
Конец
Вывод a
Вывод x, y
б) Блок-схема алгоритма подпрограммы P
Начало
i=1,n
j=1,m
type vector= array [1..20] of real;
massiv= array [1..20,1..20] of real;
var x,a:vector;
i,j,n,m:integer;
y:massiv;
procedure p(n,m:integer;x,a:vector;var y:massiv);
begin
for i:=1 to n do
for j:= 1 to m do
y[i,j]:=(sqrt(a*x))/(2+a*x*sqrt(x));
end;
BEGIN
Write (vvedite kolichestvo znachenii x и a= ');
Readln(n,m);
for i:=1 to n do
begin
Write ('Vvedite x[',i,']=');
Readln(x[i]);
end;
for j:= 1 to m do
begin
Write ('Vvedite a[',j,']=');
Readln(a[j]);
end;
p(n,m,x,a,y);
Writeln ('Tablica');
Writeln('┌───────┬───────┬───────┬───────┬───────┬───────┐');
Write('│X \ a│');
for i:=1 to m do
Write(a[i]:3:1,' ','│');
Writeln;
Writeln('├───────┼───────┼───────┼───────┼───────┼───────┤');
for i:=1 to n do
begin
Write('│',x[i]:3:1,' │');
for j:=1 to m do
Write(y[i,j]:7:3,'│');
Writeln;
end;
Writeln('└───────┴───────┴───────┴───────┴───────┴───────┘');
readln;
END.
Результат выполнения контрольного примера:
Tablica
┌──┬───┬────┬───┬────┬───┐
│x\a │ 1.0 │ 2.0 │ 3.0 │ 7.0 │ 8.0 │
├──┼───┼────┼───┼────┼───┤
│2.0 │ 0.293 │ 0.261 │ 0.234 │ 0.172 │ 0.162│
│3.0 │ 0.241 │ 0.198 │ 0.171 │ 0.119 │ 0.112│
│4.0 │ 0.200 │ 0.157 │ 0.133 │ 0.091 │ 0.086│
│7.0 │ 0.129 │ 0.096 │ 0.080 │ 0.053 │ 0.050│
│12.0│ 0.080 │ 0.058 │ 0.047 │ 0.031 │ 0.029│
│19.0│ 0.051 │ 0.037 │ 0.030 │ 0.020 │ 0.019│
└──┴───┴────┴────┴───┴───┘