C/Visual C - Equacion lineal

 
Vista:

Equacion lineal

Publicado por Jose (8 intervenciones) el 25/11/2008 13:25:29
wenas, estoy haciendo un ciclo de programacion, y necesito ayuda para resolver un par de equaciones lineales del tipo ax+by=c y dx+ey=f, contemplando la posibilidad de que no se pueda resolver, y los coficientes seran entrados por teclado. Pido porfavor k alguien me de una solucion, k sea facil de comprender para mi ya k solo he tocado el bucle if / else. Muchas Gracias!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

solucion

Publicado por AntonioG (42 intervenciones) el 25/11/2008 22:39:35
Hola,

La solucion al sistema
ax+by=c
dx+ey=f
es (si quieres la explicaci'on me dices):
x = -(b*f-c*e)/D
y = (a*f-d*c)/D
donde D=a*e-d*b
si D=0 la solucion no es unica o no existe.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Equacion lineal

Publicado por eduardo (82 intervenciones) el 26/11/2008 16:25:27
Hola primero decirte que if/else no es un bucle sino una estructura
de selección.

Con respecto al problema te recomiendo que des un breve repaso a los
Sistemas de ecuaciónes lineales que enseñan en Algebra y puedas
entender correctamente el programa:

#include <stdio.h>
#include <conio.h>

int main() {
float a1, b1, c1, a2, b2, c2;
float x, y;
float dx, dy, ds;
char continuar = 's';

while ( continuar != 27 ) {
clrscr();

printf( " SISTEMAS DE ECUACIONES LINEALES CON 2 INCOGNITAS"
" ================================================ " );

printf( " a1(x) + b1(y) = c1 "
" a2(x) + b2(y) = c2 " );

printf( " Coeficiente a1: " );
scanf( "%f", &a1 );

printf( " Coeficiente b1: " );
scanf( "%f", &b1 );

printf( " Coeficiente c1: " );
scanf( "%f", &c1 );

printf( " Coeficiente a2: " );
scanf( "%f", &a2 );

printf( " Coeficiente b2: " );
scanf( "%f", &b2 );

printf( " Coeficiente c2: " );
scanf( "%f", &c2 );

ds = a1 * b2 - a2 * b1;
dx = c1 * b2 - b1 * c2;
dy = a1 * c2 - a2 * c1;

if ( ds != 0 ) {
printf( " El sistema es determinado " );

x = dx / ds;
y = dy / ds;

printf( " x = %f ", x );
printf( " y = %f", y );
}

else {
if ( dx != 0 )
printf( " El sistema es incompatible" );

else
printf( " El sistema es indeterminado de primer orden" );

}

printf( " " );
printf( " ESC <Salir>: " );
continuar = (char)getch();
}

return 0;
}

Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Muchas Gracias

Publicado por Jose (8 intervenciones) el 26/11/2008 22:55:49
Muchas gracias x tu solucion me ha sido de gran ayuda!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar