OutTextXY (x,y: integer; str: string) -процедура. Строка str выдается, начиная с позиции (х,у). Прочее как дляOutText

SetTextStyle (font,dir,gr:word) - процедура. Для следующего вывода текста задаются шрифтовой фонт, наклон и размер символов. Параметр Font может принимать значения 0,1,... 7 (или соответствующие обозначения констант:

defaulfont = 0, sansseriffont = 3,

triplexfont = 1, gothicfont = 4,

smallfont = 2 и др.).

Параметр Dir может принимать значения HorizDir = 0 (слева направо) или VertDir = 1 (снизу вверх, строка повернута на 90 градусов против часовой стрелки). Параметр gr может принимать значения NormSize = 1 (или 0) или 2, 3,...; в первом случае используются минимальные размеры выбранного шрифта (размеры по умолчанию).

SetUserCharSize (mx,dx,my,dy:word) -процедура. Устанавливает коэффициенты увеличения символов по осям OX, OY:

"Ширина символа новая" = "Ширина символа" * Мх / Dx,

"Высота символа новая" = "Высота символа" * My / Dy.

InstaIlUserFont (font: string) -процедура. Устанавливает шрифт символов, определенный пользователем. Все шрифты символов хранятся в файлах с расширением .CHR и по мере необходимости пользователь может устанавливать тот или иной шрифтовой фонт. В переменной font должно представлено имя файла с расширением .CHR, который необходимо использовать, например,

font := InstaIlUserFont ('russ.chr');

SetTextStyle (font,vertdir,2);

SetTextJustify (hor,vert:word) - процедура. Устанавливает параметры расположения строки относительно курсора.

Hor=0 (LeftText); Vert=0 (BottomText);

Hor=1 (CenterText ); Vert=1 (CenterText);

Hor=2 (RightText ); Vert=2 (TopText).

7.8.3. Поиск экстремумов нелинейных функций.

Чтобы график заданной функции входил в предоставленное для его изображения окно, необходимо точно рассчитать масштабы Мх и My. Точность масштаба по оси Y (My) зависит от того, насколько точно будет произведен расчет граничных значений (экстремумов) функции Уф,min и Уф,mах в заданном диапазоне (Хн;Хк).

Если экстремумы линейных функций рассчитываются достаточно просто (для этого необходимо вычислить заданную функцию в границах изменения аргумента (Хн = А, Хк = В), то экстремумы нелинейных функций зависят от самих функций и могут находиться в середине введенного диапазона изменения аргумента.

Для нахождения экстремумов нелинейных функций рекомендуется следующий алгоритм поиска:

1. После ввода границ изменения аргумента (Хн = А, Хк = В) и количества точек графика N вычислить шаг изменения аргумента h.

h=(B-A)/N.

2. Задать начальное значения аргумента Х = Хн; вычислить FX = f(х), после чего полученное значение FX присвоить Yф,min и Yф,mах.

3. Вычислить следующее значения аргумента Х = Х + h.

4. Если Х > Хк, то закончить поиск экстремумов.

5. Вычислить FX = f(x); если FХ<Yф,min, то присвоить Yф,min значение FX, а также если FХ>Уф,mах, то присвоить Yф,mах значение FX. Повторять операции пп. 3-5, пока не выполнится условие п.4. На основе рассмотренного алгоритма можно использовать следующий вариант реализации.

program prog_graph;

uses Graph, Crt,......;

var grDriv, grMod : integer;

OutTextXY (x,y: integer; str: string) -процедура. Строка str выдается, начиная с позиции (х,у). Прочее как дляOutText - student2.ru OutTextXY (x,y: integer; str: string) -процедура. Строка str выдается, начиная с позиции (х,у). Прочее как дляOutText - student2.ru код графического режима

код видеографического устройства

{ Процедуры и функции }

function F(var x: real) : real

begin

… { Вычисление заданной функции }

end;

procedure Extr (Xmin,Xmax:real;count:integer; var Ymin,Ymax:real;dx:real);

var Y: real;

begin dx:= (Xmax-Xmin)/count;

Ymin := F(Xmin);

Ymax := Ymin;

while (Xmin+dx)<=Xmax do

begin Xmin := Xmin+dx;

Y:=F(Xmin);

if Y<Ymin then Ymin := Y;

if Y>Ymax then Ymax := Y;

end;

end;

begin

write('Bведите XN, XK:'); { Ввод исходных данных}

readln(Xn, Xk); { в текстовом режиме } write('Bведите количество точек графика:');

readln(N);

{—— Запуск процедуры вычисления экстремумов -——-) Extr(Xn,Xk,N,Yn,Y,h);

end.

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

Таблица 25

№ вар. Функция Количество шрифтов (не менее) Количество размеров шрифтов (не менее)
1. ax+b/x
2. ax2 + bx +c
3. exp(-x2/2)
4. OutTextXY (x,y: integer; str: string) -процедура. Строка str выдается, начиная с позиции (х,у). Прочее как дляOutText - student2.ru
5. a*sin(x)+b
OutTextXY (x,y: integer; str: string) -процедура. Строка str выдается, начиная с позиции (х,у). Прочее как дляOutText - student2.ru 6. a-X, есш Х < (Хн +Хк)/ 2 a-X, есш Х³(Хн+Хк)/2
7. а•x + cos(b•x)
8. exp (-a x) sin(b•x)
9. (exp(-x) + ехр(х)) / а
10. a•tg(b•x)-c
11. a•ctg(b•x)
12. а•sec(b • x) + с
13. а•cosec(b • x)
14. а • sin(x) + b • sm(2x)
         

7.10 Содержание отчета

1) Постановку задачи на разработку программы, исходные данные для разработки.

2) Состав и структуру исходных данных и результатов.

3) Структурную схему программы.

4) Текст программы.

Наши рекомендации