Постройте график линейного уравнения с двумя переменными - Turbo Pascal
Формулировка задачи:
Постройте график линейного уравнения с двумя переменными y=5+x. Вывод графика с решением. (Заранее спасибо !!!! ).
Решение задачи: «Постройте график линейного уравнения с двумя переменными»
textual
Листинг программы
uses graph; function F1(x:real):real; begin F1:=5+x end; function F2(x:real):real; begin F2:=-7-2*x end; var a,b,m:real; x,x1,y1:real; x0,y0,i:integer; s,s1:string; begin x0:=0; initgraph(x0,y0,'');{инициализация графического режима} a:=-16; b:=10;{интервал по Х} x0:=getmaxX div 2;{начало координат по Х} y0:=getmaxY div 2;{начало координат по Y} m:=(y0-40)/F1(b); line(x0-round(17*m),y0,x0+round(17*m),y0);{оси} line(x0,0,x0,getmaxY); for i:=1 to 16 do{максимальное количество засечек в одну сторону} begin line(x0-3,y0-round(i*m),x0+3,y0-round(i*m));{засечки на оси У} line(x0-3,y0+round(i*m),x0+3,y0+round(i*m)); line(x0+round(i*m),y0-3,x0+round(i*m),y0+3); {засечки на оси Х} line(x0-round(i*m),y0-3,x0-round(i*m),y0+3); if i mod 2=0 then begin {подпись оси У} str(i,s); outtextXY(x0-25,y0-round(i*m),s);{соответственно засечкам} outtextXY(x0-30,y0+round(i*m),'-'+s); {подпись оси Х} outtextXY(x0+round(i*m),y0+10,s); outtextXY(x0-round(i*m)-10,y0+10,'-'+s); end; end; {подписи концов осей} outtextXY(x0+round(16*m),y0-20,'X'); outtextXY(x0+5,10, 'Y'); {график} x:=a; setcolor(12); while x<=b do begin if x=a then moveto(x0+round(x*m),y0-round(F1(x)*m)) else lineto(x0+round(x*m),y0-round(F1(x)*m)); x:=x+0.1; end; x:=a; setcolor(10); while x<=b do begin if x=a then moveto(x0+round(x*m),y0-round(F2(x)*m)) else lineto(x0+round(x*m),y0-round(F2(x)*m)); if abs(F1(x)-F2(x))<0.01 then begin x1:=x; y1:=F1(x); end; x:=x+0.1; end; setcolor(14); setfillstyle(1,14); fillellipse(x0+round(x1*m),y0-round(y1*m),3,3); {название} setcolor(12); outtextXY(10,80,'y=5+x'); setcolor(10); outtextXY(10,100,'y=-7-2x'); setcolor(14); str(x1:0:1,s); str(y1:0:1,s1); outtextXY(10,120,'x='+s+' y='+s1); readln end.
Объяснение кода листинга программы
- Создается функция F1(x), которая принимает переменную x и возвращает значение 5+x.
- Создается функция F2(x), которая принимает переменную x и возвращает значение -7-2*x.
- Создаются переменные a, b, m, x, x1, y1, x0, y0, i, s, s1.
- Инициализируется графический режим с помощью функции initgraph(x0, y0, '').
- Задаются начальные значения для переменных x0, y0, i, s и s1.
- Вычисляется значение m как (y0-40)/F1(b).
- Строятся линии на графике: оси X и Y, а также засечки на каждой из осей.
- Строятся графики функций F1(x) и F2(x) с помощью функции while.
- Строится эллипс с помощью функции fillellipse.
- Выводятся подписи осей X и Y, а также название графика.
- Выводится значение переменной x1 и y1.
- Выводится название графика с помощью функции outtextXY.
- Выводится значение переменной x1, y1 с помощью функции str.
- Выводится значение переменной m с помощью функции str.
- Выводится значение переменной x0 с помощью функции str.
- Выводится значение переменной y0 с помощью функции str.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д