точки пересечения |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
точки пересечения |
Vipka |
Сообщение
#1
|
Гость |
Помогите составить программу для вычисления точек пересечения двух функиций.
и еще может кто нить дать ссылку где на примере показывается как составить прогу для вычилении функции с траемя перемеными. |
Dark |
Сообщение
#2
|
Знаток Группа: Пользователи Сообщений: 408 Пол: Мужской Репутация: 3 |
Ну, насколько я помню из математики, две функции пересекаются тогда, когда при одинаковых значениях их переменных они равны,
т.е. x^2+x+2 пересек. c x+2 тогда, когда x^2+x+2=x+2(к примеру не придирайтесь - взят из головы...) Код program peresek; var i: integer; begin for i:=1 to 1000 do begin if ((i*i)+i+2)=(i+2) then writeln('Пересечение! х= ',i); end; end. Ну и соответственно для функции с двумя неизвесными - двойной цикл. Сообщение отредактировано: volvo - -------------------- - Где я?
- Во тьме. - В какой тьме? - Во тьме твоего мозга. |
Shadow |
Сообщение
#3
|
Lonely_Raven Группа: Пользователи Сообщений: 640 Пол: Мужской Репутация: 1 |
:D а можно когда разница координат двух фн-ций
меньше чем напрмер 1 --- взвисимости какой тосности надо получить результат -------------------- Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ --------------------- RTFM - Read the fucking manual --------------------- http://www.livejournal.com/users/lonley_raven/ |
Vipka |
Сообщение
#4
|
Гость |
2 Dark что не работает.
Надо чтоб эта программа не тока считала но и рисовала график но с этим проблем меньше...........есть програама которая рисует один график: Код program gluk; uses crt,graph; var grdr,grmod,i,y0,dy1,dy,dx1,dx:integer; const ny=300;nx=400; type func= function(x:real):real; var a,b,hx, n,x,y,yg,scaly,ym,max,min:real; stma,stmi:string; const xmax=640;ymax=480;pi=3.14;t1=10;t2=2;t=3; {$F+} function f(x:real):real; begin f:=-x; end; {$F-} procedure maxmin(var max,min:real;var y0:integer; a,b,hx:real;f:func); begin x:=a; min:=f(a); max:=min; repeat x:=x+hx; y:=f(x); if y>max then max:=y else begin if y<min then min:=y; end; until x>b; writeln('max=',max); writeln('min=',min); if (max>0) and (min<0) then begin yg:=max+abs(min); scaly:=ny/yg; y0:=dy+round(scaly*max); end else begin if(max>0) and (min>=0) then begin yg:=max; y0:=ny+dy; end else begin yg:=abs(min); y0:=dy; end end; writeln('scaly=',scaly); scaly:=ny/yg; end; begin a:=0; b:=20; hx:=(b-a)/nx; dy:=round((ymax-ny)/2); dx:=round((xmax-nx)/2); dx1:=round(dx/2); dy1:=round(dy/2); maxmin(max,min, y0,a,b,hx,f); grdr:=detect; initgraph(grdr,grmod,''); setcolor(129); line(dx1,y0,xmax-dx1,y0); line(dx,ymax-dy1,dx,dy1); setcolor(5); line(xmax-dx,y0+5,xmax-dx,y0-5); line(dx+5,y0-round(max*scaly),dx-5,y0-round(max*scaly)); line(dx-5,y0-round(min*scaly),dx+5,y0-round(min*scaly)); line(xmax-dx1,y0,xmax-dx1-5,y0-5); line(xmax-dx1,y0,xmax-dx1-5,y0+5); line(dx,dy1,dx+5,dy1+5); line(dx,dy1,dx-5,dy1+5); str(max,stma); str(min,stmi); delete(stma,5,7); delete(stmi,5,7); OutTextXY (100,46 ,'y'); outtextxy (dx1+15,y0-10,'(0.0)'); outtextxy (dx-100,y0-round(max*scaly)-10,stma); outtextxy (dx-100,y0-round(min*scaly)-10,stmi); outtextxy (xmax-dx+55,y0+5,'x'); delay(2000); for i:=0 to nx do putpixel(dx+i,y0-round(scaly*f(a+i*hx)),2); readln; closegraph; end. но незнаю как сделать чтоб оба рисовала и считала точку пересечения........кто может помогите перделать если что функции f1:=-x; f2:=sqr(x+4); при -4<=x<=0 Сообщение отредактировано: volvo - |
Текстовая версия | 22.12.2024 0:20 |