Лабораторная работа 3
.docУфимский государственный авиационный технический университет
Кафедра информатики
Лабораторная работа №3
Циклы
Уфа – 2004
Задача:
Разработать программу табулирования (вычисления таблицы значений) функции для произвольного диапазона изменения независимого параметра или аргумента. Выполнить расчет для заданных значений исходных данных, используя циклы For и While.
Результаты расчетов вывести в табличной форме, включая значения аргумента, вспомогательной функции и результата.
В программу включить ввод исходных данных и их проверку на принадлежность диапазону от –100 до 100, и корректность (начальное значение меньше конечного, шаг меньше разности начального и конечного значений).
, , , ,
Блок схем алгоритма:
Таблица используемых значений
Имя |
Тип |
Назначение переменной |
Описание |
A1 |
real |
входящая |
Начальное значение x |
B1 |
real |
входящая |
Конечное значение x |
H |
real |
входящая |
Шаг |
x |
real |
выходная |
Переменное значение x |
y |
real |
выходная |
Первая функция |
b |
real |
выходная |
Предв. расчет для функции y |
p |
real |
выходная |
Предв. расчет для функции y |
p1 |
real |
выходная |
Предв. расчет для функции y |
I |
integer |
внутренняя |
Номер значения x |
N |
integer |
внутренняя |
Число шагов цикла |
c |
const |
внутренняя |
Постоянная |
Текст программы
program F;
const c=0.17;
var i, N:integer; A1, B1, H, x, y, b, p,p1 : real;
begin
repeat
Write ('Ввести начальное и конечное значение диапозона:');
Readln (A1,B1);
{ until (A1>=-100) and (A1<100);
repeat }
until (A1<B1);
Write('Ввести шаг: ');
Readln (H);
until (H<B1-A1);
N:=trunc((B1-A1)/H);
writeln('n=',n);
Writeln('x ','y ', 'b');
For i:=0 to N do
begin
x:=A1+H*i;
p:=x*c;
p1:=sin(p);
b:=exp(3*ln(p1));
y:=cos(x) - abs(x-2)+b;
writeln (x:1:0,' ',b:6:3,' ',y:6:3);
end;
readln;
end.
Результаты работы программы:
Начальное значение а |
1 |
Конечное значение а |
9 |
шаг |
1 |
x |
y |
b |
|
0.005 |
-0.455 |
|
0.037 |
-0.379 |
|
0.116 |
-1.874 |
|
0.249 |
-2.405 |
|
0.424 |
-2.292 |
|
0.619 |
-2.421 |
|
0.800 |
-3.446 |
|
0.935 |
-5.210 |
|
0.998 |
-6.914 |