All pastes #1024012 Raw Edit

Miscellany

public text v1 · immutable
#1024012 ·published 2008-05-20 17:43 UTC
rendered paste body
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
#include<math.h>
#include<stdlib.h>
float f(float x)
 {
  return x+exp(x)+10/(1+x*x)-5;
  }
float fd(float x)
 {
  return 1+exp(x)-(20*x)/((1+x*x)*(1+x*x)) ;
  }
void main()
{clrscr();
float k,x0,x1,i,mod;
cout<<"Dati valoarea initiala ";cin>>x0;
int gd=DETECT,gm;
initgraph(&gd, &gm, "d:\\borlandc\\bgi");
line(0,240,635,240);
line(320,15,320,480);
outtextxy(317,15,"^");
outtextxy(632,237,">");
setcolor(LIGHTBLUE);
outtextxy(155,5,"Metoda Tangentei pentru x+exp(x)+10/(1+x*x)-5");
outtextxy(325,15,"F(x)");
outtextxy(622,247,"x");
for(k=-6;k<=6;k=k+0.001)
putpixel(320+60*k,240-(20*f(k)),RED);
char c[3];
for(i=-6;i<7;i++)
outtextxy(320+60*i,245,itoa(i,c,10));
setcolor(LIGHTGREEN);
x1=x0-f(x0)/fd(x0);
mod=x1-x0;
if(mod<0)
mod=-1*mod;
while(mod>0.1)
{//line(320+60*x0,240-(20*f(x0)),320+60*x0,240);
line(320+60*(x0-2),240-20*(f(x0)+fd(x0)*(-2)),320+60*(x0+2),240-20*(f(x0)+fd(x0)*2));
getch();
x0=x1;
x1=x0-f(x0)/fd(x0);
if(x1-x0<0) mod=x0-x1;
else mod=x1-x0;
}
outtextxy(0,20,"Solutia aproximativa a ecuatiei este ");
cout<<x0;
getch();
}