- •Министерство образования Российской Федерации
- •Сургутский Государственный Университет
- •Кафедра «Информатики и вычислительной техники»
- •Отчет о практике
- •Задание 1. Экстремум функции
- •Задание 2. График функции в текстовом режиме
- •Задание 3. Процедурные типы
- •Задание 4. Модули
- •Задание 5. Линейный регрессионный анализ
- •Задание 6. Динамическая память в программировании графического режима
Задание 2. График функции в текстовом режиме
Задание по практике
Построить график функции = на заданном интервале [0, 5] изменения аргументаx. Использовать стандартные функции текстового режима (модульCRT). Вычислениеоформить в виде функции.
Соглашение о требованиях к программе
2.1Назначение программы:
Построение графика функции= в текстовом режиме.
2.2Перечень функций, выполняемых программой
Построение координатной плоскости,
Перевод действительных значений координат в относительные для вывода на экран,
Построение графика.
2.3Формат входных данных:
На вход программы не поступает данных извне.
2.4Формат выходных данных:
На экран выводится координатная плоскость и график заданной функции.
Реализация:
3.1Текст программы:
program
p2; uses
Crt;
var
i, j, Xs, Ys, Xg, Yg: LongInt;
x, y, dx: Real;
function
f(x: Real): Real;
{Возвращает
значение функции f(x) = -0.7x + 0.4 в точке x} begin f
:= -0.7 * x + 0.4; end;
begin
ClrScr;
GoToXY(2, 1);
TextColor(15);
Write('y=-0,7x+0,4');
TextColor(10);
for i := 30 downto 2 do
begin
GoToXY(14, i);
Write('│');
end;
GoToXY(14, 1);
Write('^');
GoToXY(16, 1);
TextColor(13);
Write('y');
for i := 1 to 6 do
begin
GoToXY(14, 4 + (i - 1) * 5);
TextColor(10);
Write('┤');
GoToXY(9, 4 + (i - 1) * 5);
Yg := (2 - i);
TextColor(13);
Write(Yg : 4);
end;
Приложения:
4.1Результаты тестовых прогонов при тестировании:
Задание 3. Процедурные типы
Задание по практике
Использовать процедурные типы. Управляющий параметр ввести с клавиатуры
Соглашение о требованиях к программе
2.1Назначение программы:
Нахождение суммы n членов одного из рядов:
;n = 25
; n = 35
;n= 40
2.2Перечень функций, выполняемых программой
Нахождение суммы nчленов выбранного ряда.
2.3Формат входных данных:
Числовой – управляющий параметр (1, 2, 3).
2.4Формат выходных данных:
На экран выводится значение найденной суммы.
Реализация:
3.1Текст программы:
program
p3; uses
Crt;
type
S = function(i: Byte): Real;
function
S1(i: Byte): Real; far;
{Возвращает
значение i-того
члена ряда S1} begin
if i = 1 then S1 := 1 else S1 :=
1 / ((i - 1) * i); end;
function
S2(i: Byte): Real; far;
{Возвращает
значение i-того
члена ряда S2} begin
S2 := (2 * i) / Exp(Ln(3) * i); end;
function
S3(i: Byte): Real; far;
{Возвращает
значение i-того
члена ряда S3} begin
if i = 1 then S3 := 1 else S3 :=
1 / (2 * i - 1); end;
var
Sn: S; i, N, Flag: Byte; Sum: Real;
begin
ClrScr;
WriteLn('Найти сумму
ряда:');
WriteLn;
WriteLn('1: S = 1 + 1/(1*2) +
1/(2*3) + 1/(3*4) + 1/(4*5) + ... n = 25');
WriteLn;
WriteLn('2: S = 2/3 + 4/9 + 6/27
+ 8/81 + ... n = 35');
WriteLn;
WriteLn('3: S = 1 + 1/3 + 1/5 +
1/7 + ... n = 40');
WriteLn;
Write('Введите
управляющий параметр (1,2,3) -> ');
ReadLn(Flag);
WriteLn;
case Flag of
1 : begin Sn:=S1; N:=25; end;
2 : begin Sn:=S2; N:=35; end;
3 : begin Sn:=S3; N:=40; end;
else
Приложения
4.1Результаты тестовых прогонов при тестировании: