Задание.
Repeat until KeyPressed;
PutPixel(i,yy,Color)
Line(xx,y1,xx,y2);
End;
Repeat until KeyPressed; Exit
Begin
I:=GraphResult;
Uses Graph,Crt;
Модуль Graph.
Лекция 15
На примере программы построения графика заданной функции
program Graphic;
var Xmax,Ymax,Xmin,Ymin,hx,hy,x,y,xx1,xx2,yy1,yy2 : real;
Gd,Gm,xx,yy,mx,my,i,Color,x1,x2,y1,y2 : integer;
s : string[40];
function F(x : real) : real;
begin
F:=sin(10*x*x) {Функция, график которой строим}
end;
begin {Тело программы}
{ Начальные установки =======================================}
Color:=15;
writeln('Введите реальные координаты графика Xmax,Xmin,Ymax,Ymin');
readln(Xmax,Xmin,Ymax,Ymin);
writeln('Введите относительные координаты экрана x1,x2,y1,y2');
readln(xx1,xx2,yy1,yy2);
{Установка графического режима=============================}
Gd:=Detect;
InitGraph(Gd,Gm,'d:\bp\BGI\');
if i<>grOk then
writeln('Ошибка', i:3,'Нажмите любую клавишу');
{ Масштабирование ==========================================}
mx:=GetMaxX; my:=GetMaxY;
x1:=round(xx1*mx); x2:=round(xx2*mx); {Относительные координаты}
y1:=round(yy1*my); y2:=round(yy2*my); {выржаются в пикселах}
hx:=(x2-x1)/(Xmax-Xmin);
hy:=(y2-y1)/(Ymax-Ymin);
{ Рисуем оси координат =======================================}
xx:=x1-round(Xmin*hx);
if (xx>x1)and(xx<x2) then Line(xx,y1,xx,y2);
yy:=y1-round(Ymin*hy);
if (yy>y1)and(yy<y2) then Line(x1,yy,x2,yy);
{Подпись}
OutTextXY(x1,y2+round(0.1*my),'Pic.1. My picture');
{ Устанавливаем шкалы на оси и рисуем сетку ===================}
for i:=1 to 11 do
begin
xx:=x1+(i-1)*(x2-x1) div 10;
x:=Xmin+(Xmax-Xmin)/10*(i-1);
Str(x:5:2,s);
if odd(i) then OutTextXY(xx-20,y2+round(0.05*my),s);
yy:=y1+(i-1)*(y2-y1) div 10;
y:=Ymax-(Ymax-Ymin)/10*(i-1);
Str(y:5:2,s);
Line(x1,yy,x2,yy);
OutTextXY(x1-round(0.1*mx),yy-5,s);
end;
{ Рисуем график =============================================}
for i:=x1 to x2 do
begin
x:=Xmin+(i-x1-1)/hx;
y:=F(x);
yy:=y1+Round((Ymax-y)*hy);
end;
{ Задержка ========================================}
CloseGraph
end.
Заменить PutPixel на LineTo
Посмотреть, какие еще процедуры и функции имеются в модуле Graph
Задача «Часики» (CRT, Graph)
15.1.1 Общие сведения:
· Имеется возможность установить любой (из допустимых) графический драйвер.
· Можно организовать работу с нескольими страницами (экранами)
· Можно выделить графическое окно. Очистить, рисовать.
· Текущий цвет фона, текущий цвет рисования, текущий шрифт и размер текста.
· Текущий указатель (аналог курсора)
· Средства рисования фигур, точки
· Средства выдачи текстового материала
· Средства определения текущих установок
1. Загальна характеристика неокласичних ідей у ХХ ст.
2. Теорії монополії та конкуренції
3. Неокласичні теорії економічного зростання
4. Лондонська школа неолібералізму
5. Німецький неолібералізм
6. Паризька школа неолібералізму
7. Неокласичний синтез
8. Монетаризм
9. «Економіка пропозиції»
10. Теорія «раціональних очікувань»