Полтава – 2009
Лабораторна робота № 1
Мовою TURBO PASCAL скласти програму обчислення функції з розгалуженням F(Xі) згідно з варіантами завдань із використанням циклу REPEAT... UNTIL або WHILE... DO. Аргумент Xі заданий умовами: а<х<b, xi+1 = Xi ±h, h – крок, тобто величина, на яку збільшується змінна Xi при черговому виконанні циклу.
A=5; B=18; C=12; h=2.
{Текст програми №1}
Program Tabulation_1; { Табуляція функції }
Uses Crt; { Під’єднання модуля Сrt }
CONST { Об’ява констант }
A=5; B=18; C=12; h=2;
VAR { Об’ява змінних }
F, X :REAL;
BEGIN { Початок основного блока програми }
CLRSCR; { Очищення екрана }
X:=A; { Присвоєння початкового значення змінній }
Repeat { Циклічна конструкція }
IF X<C { Умовна конструкція }
THEN F:=2*X*LN(ABS(SQR(A)-X))
ELSE F:=EXP(A*X);
WRITELN (‘X=’,X:5:2,’ F=’,F:5:2); { Виведення результатів }
X:=X+H; { Перепозначення змінної циклу }
UNTIL X>B { Перевірка умови виходу із циклу }
END. { Закінчення основного блока програми }
_____________________________________________________________
Program Tabulation_2; { Заголовок програми }
Uses Crt; { Під’єднання модуля Сrt }
CONST { Об’ява констант }
A=5; B=18; C=12; h=2;
VAR { Об’ява змінних }
F, X :REAL;
BEGIN { Початок основного блока програми }
CLRSCR; { Очищення екрана }
X:=A; { Присвоєння початкового значення змінній }
While X<B do
begin { Циклічна конструкція }
IF X<C { Умовна конструкція }
THEN F:=2*X*LN(ABS(SQR(A)-X))
ELSE F:=EXP(A*X);
WRITELN (‘X=’,X:5:2,’ F=’,F:5:2); { Виведення результатів }
X:=X+H; { Перепозначення змінної циклу }
End;
END. { Закінчення основного блока програми }
Program Tabulation_3; { Табуляція функції }
Uses Crt; { Під’єднання модуля Сrt }
CONST { Об’ява констант }
A=5; B=18; C=12; h=2;
VAR { Об’ява змінних }
F, X :REAL;
I:Byte;
BEGIN { Початок основного блока програми }
CLRSCR; { Очищення екрана }
X:=A; { Присвоєння початкового значення змінній }
For i:=1 to 10 do
begin { Циклічна конструкція }
IF X<C { Умовна конструкція }
THEN F:=2*X*LN(ABS(SQR(A)-X))
ELSE F:=EXP(A*X);
WRITELN (‘X=’,X:5:2,’ F=’,F:5:2); { Виведення результатів }
X:=X+H; { Перепозначення змінної циклу }
End; { Перевірка умови виходу із циклу }
END. { Закінчення основного блока програми }
Результат
Лабораторна робота № 2
Програма має зчитувати з клавіатури в масив дійсні числа до тих пір, поки добуток чисел послідовності менше ніж 100. Після цього повинна видати на екран добуток чисел, що введені, максимальне та мінімальне число послідовності.
{Текст програми №2}
Program Proizv;
uses crt;
Var
A:array [1..100]of real;
I,k:integer;
proizvedenie,max,min:real;
Begin
clrscr;
Writeln('введите элементы массива');
Writeln('a[1]'); Readln(a[1]);
I:=1; Proizvedenie:=a[1];
repeat
I:=i+1;
Writeln('a[',I,']'); Readln(a[i]);
Proizvedenie:=proizvedenie*a[i];
until proizvedenie>100;
Min:=a[1]; Max:=a[1];
for k:=1 to i do
Begin
If a[k]<min then min:=a[k];
If a[k]>max then max:=a[k];
End;
Writeln('proizvedenie=',proizvedenie:6:2);
Writeln('min=',min:6:2);
Writeln('max=',max:6:2);
End.