Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
вася васильев93
0 / 0 / 0
Регистрация: 13.04.2013
Сообщений: 8
#1

Построить графики функций и найти точки их пересечения - Pascal ABC

13.04.2013, 23:26. Просмотров 912. Ответов 4
Метки нет (Все метки)

1.построить графики функций и найти точки их пересечения
y=sqrt(2x-7), y=x-8
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.04.2013, 23:26
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Построить графики функций и найти точки их пересечения (Pascal ABC):

Построить графики функций и найти точки их пересечения
построить графики функций и найти точки их пересечения y=1-x, y=2x|x-1|. вот...

Построить графики функций и найти точки их пересечения
1. Построить графики функций и найти точки их пересечения : a) y=x^4, b)...

Построить графики функций и найти точки их пересечения
требуется построить графики функций и найти точки их пересечения y=2+x,...

Построить графики функций и найти точки их пересечения y=e^x, y=4x+1
Построить графики функций и найти точки их пересечения y=e^x, y=4x+1

Построить графики функций и найти их пересечения
построить графики функций и найти их пересечения y=sin2x, y=0,5-cos2x

Найдите точки пересечения графиков функций
Доброго времени. Есть задача, вроде не сложная, но не получается сделать. Прога...

4
Puporev
Модератор
54139 / 41772 / 28880
Регистрация: 18.05.2008
Сообщений: 98,320
14.04.2013, 14:17 #2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
uses graphABC;
function F1(x:real):real;
begin
F1:=sqrt(2*x-7);
end;
function F2(x:real):real;
begin
F2:=-sqrt(2*x-7);
end;
function F3(x:real):real;
begin
F3:=x-8;
end;
var xn,xk,x,m,dx,x1:real;
    x0,y0,n,i:integer;
    s,s1,s2:string;
begin
xn:=0;//интервал по Х
xk:=20;
x0:=40;{начало координат}
y0:=windowheight div 2;
m:=(windowwidth -x0-20)/xk;{масштаб}
line(0,y0,windowwidth,y0);{оси}
line(x0,0,x0,windowheight);
for i:=1 to 20 do{создаем оси координат}
  begin
    line(x0+round(i*m),y0-3,x0+round(i*m),y0+3); {засечки на оси Х}
    line(x0-3,y0-round(i*m),x0+3,y0-round(i*m)); //засечки на оси Y
    line(x0-3,y0+round(i*m),x0+3,y0+round(i*m));
    str(i,s);
    {подпись оси Х}
    textout(x0+round(i*m),y0+10,s);
    {подпись оси Y}
    textout(x0-25,y0-round(i*m),s);
    textout(x0-30,y0+round(i*m),'-'+s);
  end;
{центр}
textout(x0+5,y0+10,'0');
{подписи концов осей}
textout(windowwidth-10,y0-15,'X');
textout(x0+5,10, 'Y');
{графики}
textout(windowwidth div 2-80,20,'Точки пересечения');
x:=xn;
dx:=0.001;
n:=0;
while x<=xk do
 begin
  if 2*x>=7 then
   begin
    setpixel(x0+round(x*m),y0-round(F1(x)*m),clBlue);
    setpixel(x0+round(x*m),y0-round(F2(x)*m),clBlue);
   end;
  setpixel(x0+round(x*m),y0-round(F3(x)*m),clRed);
  if(2*x>=7)and((abs(F1(x)-F3(x))<dx/2)or(abs(F2(x)-F3(x))<dx/2)) then //точки пересечения
   begin
    x1:=x;
    n:=n+1;
    setbrushcolor(clGreen);
    if abs(F1(x)-F3(x))<dx/2 then
     begin
      circle(x0+round(x1*m),y0-round(F1(x1)*m),3);
      str(F1(x):5:2,s2);
     end
    else
     begin
      circle(x0+round(x1*m),y0-round(F3(x1)*m),3);
      str(F2(x):5:2,s2);
     end;
    str(n,s);
    str(x1:5:2,s1);
    setbrushstyle(bsClear);
    textout(windowwidth div 2-80,20*(n+1),' Точка '+s+' x= '+s1+'  y='+s2)
   end;
  x:=x+dx; {наращиваем х}
 end;
end.
0
вася васильев93
0 / 0 / 0
Регистрация: 13.04.2013
Сообщений: 8
14.04.2013, 15:45  [ТС] #3
спасибо) но вторая функция, я думаю, не нужна была
0
Puporev
Модератор
54139 / 41772 / 28880
Регистрация: 18.05.2008
Сообщений: 98,320
14.04.2013, 15:51 #4
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
uses graphABC;
function F1(x:real):real;
begin
F1:=sqrt(2*x-7);
end;
function F2(x:real):real;
begin
F2:=x-8;
end;
var xn,xk,x,m,dx,x1:real;
    x0,y0,n,i:integer;
    s,s1,s2:string;
begin
xn:=0;//интервал по Х
xk:=20;
x0:=40;{начало координат}
y0:=windowheight div 2;
m:=(windowwidth -x0-20)/xk;{масштаб}
line(0,y0,windowwidth,y0);{оси}
line(x0,0,x0,windowheight);
for i:=1 to 20 do{создаем оси координат}
  begin
    line(x0+round(i*m),y0-3,x0+round(i*m),y0+3); {засечки на оси Х}
    line(x0-3,y0-round(i*m),x0+3,y0-round(i*m)); //засечки на оси Y
    line(x0-3,y0+round(i*m),x0+3,y0+round(i*m));
    str(i,s);
    {подпись оси Х}
    textout(x0+round(i*m),y0+10,s);
    {подпись оси Y}
    textout(x0-25,y0-round(i*m),s);
    textout(x0-30,y0+round(i*m),'-'+s);
  end;
{центр}
textout(x0+5,y0+10,'0');
{подписи концов осей}
textout(windowwidth-10,y0-15,'X');
textout(x0+5,10, 'Y');
{графики}
//textout(windowwidth div 2-80,20,'Точки пересечения');
x:=xn;
dx:=0.001;
n:=0;
while x<=xk do
 begin
  if 2*x>=7 then setpixel(x0+round(x*m),y0-round(F1(x)*m),clBlue);
  setpixel(x0+round(x*m),y0-round(F2(x)*m),clRed);
  if(2*x>=7)and(abs(F1(x)-F2(x))<dx/2) then //точки пересечения
   begin
    x1:=x;
    setbrushcolor(clGreen);
    if abs(F1(x)-F2(x))<dx/2 then
     begin
      circle(x0+round(x1*m),y0-round(F1(x1)*m),3);
      str(F1(x):5:2,s2);
     end;
    str(x1:5:2,s1);
    setbrushstyle(bsClear);
    textout(windowwidth div 2-80,20,' Точка пересечения  x= '+s1+'  y='+s2)
   end;
  x:=x+dx; {наращиваем х}
 end;
end.
0
вася васильев93
0 / 0 / 0
Регистрация: 13.04.2013
Сообщений: 8
14.04.2013, 16:58  [ТС] #5
спасибо)))
0
14.04.2013, 16:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2013, 16:58
Привет! Вот еще темы с решениями:

Построить графики функций
Построить графики функций, заданных по одному из вариантов в таблице 1: а) ...

Построить графики функций
Прошу,срочно помогите на паскале абс y=|x| y=x^2+2x+1 y=sinx * cosx...

Построить графики функций
Построить графики функций:

Построить графики функций
Построить графики функций: y = - x2 + 4x – 5 на отрезке


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru