• Domingo 19 de Mayo de 2024, 08:41

Autor Tema:  Sistemas tres ecuaciones  (Leído 1025 veces)

juventina

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Sistemas tres ecuaciones
« en: Lunes 7 de Julio de 2008, 22:53 »
0
Hola chicos, hice este programa, calcula las raices en un sistema de tres ecuaciones. Cuando lo corro me aparece basura y valores nada que ver.
Estoy probando el sistema:
{2x-y+2z=-6
 3x+2y-z=4
 4x+3y-3z=1}  donde x=1, y=2, z=3

Código: Text
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <iostream.h>
  4.  
  5. class datos;
  6. class salida
  7. {
  8. public:
  9.     void valoresdevariables(datos k);
  10. };
  11.  
  12. class datos
  13. {
  14. public:
  15.     int A1,B1,C1,R1,D;
  16.     int A2,B2,C2,R2,xtemp,ytemp,ztemp;
  17.     int A3,B3,C3,R3,x,y,z;
  18.     void leerdatos();
  19.     friend void salida::valoresdevariables(datos k);
  20. };
  21.  
  22. void datos::leerdatos()
  23.     {
  24.     clrscr();
  25.     printf("nSISTEMA DE ECUACIONES");
  26.     printf("nA1:n");cin>>A1; printf("nB1:n");cin>>B1; printf("nC1:n");cin>>C1; printf("nR1:n");cin>>R1;
  27.     printf("nA2:n");cin>>A2; printf("nB2:n");cin>>B2; printf("nC2:n");cin>>C2; printf("nR2:n");cin>>R2;
  28.     printf("nA3:n");cin>>A3; printf("nB3:n");cin>>B2; printf("nC3:n");cin>>C2; printf("nR3n");cin>>R2;
  29.     }
  30.  
  31.  
  32. void salida::valoresdevariables(datos k)
  33.     {
  34.     k.D=(k.A1*((k.B2*k.C3)-(k.C2*k.B3))-k.A2*((k.B1*k.C3)-(k.C1*k.B3))+k.A3*((k.B1*k.C2)-(k.C1*k.B2)));
  35.     k.xtemp=(k.R1*((k.B2*k.C3)-(k.B3*k.C1))-k.B1*((k.R2*k.C3)-(k.R3*k.C2))+k.C1*((k.R2*k.B3)-(k.R3*k.B2)));
  36.     k.ytemp=(k.A1*((k.R2*k.C3)-(k.R3*k.C2))-k.R1*((k.A2*k.C3)-(k.A3*k.C2))+k.C1*((k.A2*k.R3)-(k.A3*k.R2)));
  37.     k.ztemp=(k.A1*((k.B2*k.R3)-(k.B3*k.R2))-k.B1*((k.A2*k.R3)-(k.A3*k.R2))+k.R1*((k.A2*k.B3)-(k.A3*k.B2)));
  38.     k.x=(k.xtemp/k.D);
  39.     k.y=(k.ytemp/k.D);
  40.     k.z=(k.ztemp/k.D);
  41.  
  42.     clrscr();
  43.     printf("nSISTEMA DE ECUACIONES");
  44.     printf("n%dx+ %dy+ %dz=%d",k.A1,k.B1,k.C1,k.R1);
  45.     printf("n%dx+ %dy+ %dz=%d",k.A2,k.B2,k.C2,k.R2);
  46.     printf("n%dx+ %dy+ %dz=%d",k.A3,k.B3,k.C3,k.R3);
  47.     printf("nRAICES: nx=%d, y=%d, z=%d", k.x,k.y,k.z);
  48.     getch();
  49.     clrscr();
  50.     }
  51.  
  52. void main()
  53.     {
  54.     datos matriz1, matriz2;
  55.     salida resultado;
  56.     matriz1.leerdatos();matriz2.leerdatos();
  57.  
  58.     resultado.valoresdevariables(matriz1);
  59.     resultado.valoresdevariables(matriz2);
  60.     }
  61.  
  62.  
  63.  

gonza_fs

  • Nuevo Miembro
  • *
  • Mensajes: 24
    • Ver Perfil
Re: Sistemas tres ecuaciones
« Respuesta #1 en: Jueves 10 de Julio de 2008, 19:22 »
0
Hola, que tal. Mira, antes que nada, fijate que al momento de cargar las variables por pantalla, estas cargando C2 y R2, dos veces. Por ahora es lo unico que puedo decirte, ya que sinceramente no le he prestado atencion al resto del codigo. Si pudieras explicar un poquito como funciona o comentar algo del mismo, seria de mas ayuda. Suerte.