Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции

Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции

ЛАБОРАТОРНАЯ РАБОТА #2

ПРОГРАММИРОВАНИЕ ВЫЧИСЛИТЕЛЬНЫХ ПРОЦЕССОВ Повторяющейся СТРУКТУРЫ

Часть 1. Табулирование функции

Нередко при решении задач приходится неоднократно вычислять по одним и этим же математическим зависимостям при разных значениях входящих в их величин. Такие неоднократно повторяемые участки вычислительного процесса именуются циклами. Внедрение циклов позволяет значительно уменьшить схему метода и длину соответственной ему программки. Различают Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции циклы с данным и неведомым числом повторений. К последним относятся итерационные циклы, характеризующиеся поочередным приближением к разыскиваемому значению с данной точностью.

Разглядим задачку, именуемую табулированием функции. Вычислить и вывести на печать значения функции Y=F(X) при X, изменяющемся на отрезке [A, B], с разбиением его на N подотрезков. Это Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции цикл с данным числом повторений N, где шаг конфигурации аргумента X определяется как H=(B-A)/N.

Перед первым выполнением цикла нужно задать изначальное значение аргумента X, равное A, а потом организовать (N+1) раз вычисление и печать значений функции Y. При каждом новеньком выполнении цикла нужно изменять аргумент Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции на шаг H. Чтоб процесс был конечным, нужно задать условие окончания цикла. Таким макаром, для организации цикла нужно:

Последние три функции производятся неоднократно.

Описание метода задачки табулирования функции может иметь вид:

1. Прочесть A.

2. Прочесть B.

3. Если B

4. Прочесть N.

5. Если N<=0, то повторить п. 4.

6. Вычислить H=(B-A)/N;

7. Вычислить X=A.

8. Напечатать X и Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции Y=F(X).

9. Вычислить X=X+H.

10. Если X<=B, то повторить п. 8.

Описание метода выходит в почти всех случаях более малогабаритным и приятным, если использовать блок начала цикла (блок модификации), который делает все функции, нужные для его организации. В данном случае описание метода задачки табулирования функции будет Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции иметь вид:

1. Прочесть A.

2. Прочесть B.

3. Если B

4. Прочесть N.

5. Если N<=0, то повторить п. 4.

6. Вычислить H=(B-A)/N;

7. Вычислить X=A.

8. Организовать цикл для параметра цикла i, изменяющегося от 1 до N+1 c шагом 1; в теле цикла делать:

a. напечатать X и Y=F(X);

b Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции. вычислить X=X+H.

Пример. Вычислить и вывести на печать значения функции Y=SIN(X). В согласовании со вторым вариантом описания метода можно написать такую программку:

program Tabul;

{$APPTYPE CONSOLE}

uses

SysUtils;

procedure Pause;

begin

Write('Press ...');

Readln

end;

var

a, b, h, x, temp: Real;

n, i: Integer;

begin

Write('Enter a Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции: ');

Readln(a);

Write('Enter b: ');

Readln(b);

if (b < a) then

begin

temp:=a;

a:=b;

b:=temp;

end;

repeat

Write('Enter n: ');

Readln(n);

until (n > 0);

Writeln;

h:=(b-a)/n;

x:=a;

writeln('+--------------------+');

writeln('| x | sin(x) |');

writeln('+--------------------+');

for i:=1 to (n+1) do

begin

Writeln('|',x:6:2,' | ',sin(x):6:2,' |');

x:=x+h

end;

writeln('+--------------------+');

Writeln Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции;

Pause

end.

Протокол выполнения программки будет иметь вид:

Enter a: -1

Enter b: 1

Enter n: 10

+--------------------+

| x | sin(x) |

+--------------------+

| -1.00 | -0.84 |

| -0.80 | -0.72 |

| -0.60 | -0.56 |

| -0.40 | -0.39 |

| -0.20 | -0.20 |

| -0.00 | -0.00 |

| 0.20 | 0.20 |

| 0.40 | 0.39 |

| 0.60 | 0.56 |

| 0.80 | 0.72 |

| 1.00 | 0.84 |

+--------------------+

Press ...

Часть 2. Нахождение большего либо меньшего значения при вычислении значения функции

При поиске большего Ymax (меньшего Ymin) из вычисляемых значений функции F(X) переменной Ymax (Ymin), которая после вычислений будет представлять наибольшее (малое Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции) значение функции, до входа в цикл следует присвоить одно из вычисляемых значений F(X), а в цикле для каждого еще одного значения функции F(X) инспектировать: если F(X) >Ymax (F(X)

Если заблаговременно понятно, что наибольшее (меньшее) значение функции Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции на данном интервале больше (меньше) некой величины, к примеру, -1015 (1015), то данную величину можно использовать в качестве исходного значения при поиске большего (меньшего) значения функции, к примеру, Ymax:=-1E15 (Ymin:=1E15).

Вместе с нахождением большего/меньшего значения функции может потребоваться нахождение значения аргумента, при котором оно достигается.

Ниже представлен кусок программки поиска Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции большего значения функции

Y(X)=e-XSin(5X), вычисляемых на значениях X, изменяющихся от A до B с шагом H, также значения аргумента, на котором он достигается.

Ymax:=Exp(-a)*Sin(5*a);

Xmax:=a;

X:=a+h;

Xk:=b+h/2;

while X < Xk do

begin

Y:= Exp(-X)*Sin(5*X);

if Y Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции > Ymax then

begin

Ymax:=Y;

Xmax:=X;

end;

X := X+h;

end;

WriteLn('Ymax = ',Ymax:6:2);

WriteLn('Xmax = ',Xmax:6:2);

Рассмотренные выше приёмы наличия на данном интервале максимума/минимума функции и точек (значений аргумента), на которых они достигаются, не следует путать с нахождением экстремумов функции, потому что разыскиваемый максимум/минимум может Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции находиться на границе интервала, где производная функции не равна нулю.

Задание

Написать программку табулирования функции Y=F(X) (в согласовании со своим вариантом), определенной на отрезке [A, B], с разбиением его на N подотрезков. Отыскать наибольшее и меньшее значения функции на данном отрезке, также значения аргументов, при которых они достигаются.

Варианты заданий

№№ Формула Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции №№ Формула №№ Формула
у= 3√х у= sin(x)eх у= sin(x) sh(x)
у= х√х у= x2+ cos(x) y= 0.5+sh2(x)
у= ln(х) у= x+ sin(x) у= √х ch(x)
у= 1+ ln2(х) у= cos(x)/x2 у= 1/ (1+ ch2(x) )
у= 1+ eх у Часть 2. Нахождение наибольшего или наименьшего значения при вычислении значения функции= ln(х2) у= √х sh(x)
у= 1/3√х у= eхx /2 у= ch(x)e-х
у= 1/√х у= cos(x) eх у= √x+ sin(x)
у= 4√х у= 1/(1+ e-х ) y= x(1-cos(x))
y= 5√х +sh2(x)


chast-2-administrativnaya-otvetstvennost-nesovershennoletnih-v-rb.html
chast-2-bolshe-nikakih-tajn.html
chast-2-cerkovnie-uchrezhdeniya-kak-sposob-legalizacii-reabilitacionnih-sekt.html