Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CODIGO
Program Multivariable
Implicit none
!Declaracion de variables
Real::x0,y0,eps,df1x,df2x,df1y,df2y,f1,f2,delta,deltax,deltay,distancia,x1,y1,hjx,hjy
Integer::i,maxiteraciones
Real,dimension(2,2)::A
!Bloque de entrada
Write(*,*)"f1(x,y)=(x^2)-4x+(y^2)-22=0"
Write(*,*)"f2(x,y)=(x^3)+(5y^2)-10x-122=0"
Write(*,*)"NOTA: Evite introducir valores iniciales de x y y igual a cero, dado que la solucion se
indetermina"
Write(*,*)"Ingresa x0:"
Read(*,*)x0
Write(*,*)"Ingresa y0:"
Read(*,*)y0
Read(*,*)eps
Read(*,*)maxiteraciones
Do while(i<maxiteraciones)
df1x=((2*x0)-4)
df2x=((3*(x0**2))-10)
df1y=2*y0
df2y=10*y0
A(1,1)=df1x
A(2,1)=df2x
A(1,2)=df1y
A(2,2)=df2y
f1=((-(x0**2))+(4*x0)-(y0**2)+22)
f2=((-(x0**3))-(5*(y0**2))+(10*x0)+122)
delta=(df1x*df2y)-(df2x*df1y)
deltax=(f1*df2y)-(df1y*f2)
deltay=(df1x*f2)-(f1*df2x)
hjx=deltax/delta
hjy=deltay/delta
x1=x0+hjx
y1=y0+hjy
!Calculando distancia
distancia=sqrt(((x1-x0)**2)+((y1-y0)**2))
x0=x1
y0=y1
i=i+1
End do
!Comparacion
IF(distancia<eps)then
Write(*,*)"Si desea resolver otro sistema de ecs. solo modifique en el codigo fuente:"
ELSE
Write(*,*)"Solucion no encontrada"
End IF
IMPRESIÓN DE PANTALLA