Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Завдання до лаборатоних TURBO PASCAL_12.doc
Скачиваний:
2
Добавлен:
19.08.2019
Размер:
224.77 Кб
Скачать

Полтава – 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.