Ver Mensaje Individual
  #6 (permalink)  
Antiguo 28/04/2011, 13:45
J0rg3M4r10
 
Fecha de Ingreso: mayo-2010
Mensajes: 49
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: Resolver ecuaciones c#

este funciona en C
Código C:
Ver original
  1. main()
  2. {
  3. int i;
  4.  
  5. clrscr();
  6.  
  7. printf("||\t\tEquation Solver\t\t||\n");
  8. printf("Format of equation : \n");
  9. printf("1. ax+b=c\n");
  10. printf("2. ax+by+c=0\n   dx+ey+f=0\n");
  11. printf("3. ax^2+bx+c=0\n");
  12. printf("4. ax^3+bx^2+cx+d=0\n");
  13. printf("\nEnter number for format : ");
  14. scanf("%d",&i);
  15. if(i==1)
  16. lin1();
  17. if(i==2)
  18. lin2();
  19. if(i==3)
  20. quad();
  21. if(i==4)
  22. cubic();
  23. }
  24.  
  25. lin1()
  26. {
  27. float a,b,c,x;
  28. clrscr();
  29. printf("ax + b = c\n");
  30. printf("Enter a,b and c separated by commas :\n");
  31. scanf("%f,%f,%f",&a,&b,&c);
  32. printf("\n%fx=%f-%f",a,c,b);
  33. printf("\n%fx=%f",a,c-b);
  34. x = (c-b)/a;
  35. printf("\n=>x = %f",x);
  36. rep();
  37. }
  38.  
  39. lin2()
  40. {
  41. float a,b,c,d,e,f,x,y;
  42. clrscr();
  43. printf("ax + by+ c = 0\ndx + ey + f = 0");
  44. printf("\nEnter a,b,c,d,e and f separated by commas : \n");
  45. scanf("%f,%f,%f,%f,%f,%f",&a,&b,&c,&d,&e,&f);
  46. x = ((f*b)-(c*e))/((a*e)-(d*b));
  47. y = ((c*d)-(f*a))/((a*e)-(d*b));
  48. printf("\n x = %f\n y = %f",x,y);
  49. rep();
  50. }
  51.  
  52. quad()
  53. {
  54. float a,b,c,x1,x2,d;
  55. clrscr();
  56. printf("ax^2 + bx + c = 0");
  57. printf("\nEnter a,b,c separated by commas : \n");
  58. scanf("%f,%f,%f",&a,&b,&c);
  59. d = pow(b,2)-(4*a*c);
  60. if(d>=0)
  61. {
  62. x1 = (-b+sqrt(d))/(2*a);
  63. x2 = (-b-(sqrt(d)))/(2*a);
  64. printf("\nRoot 1 : %f\nRoot 2 : %f",x1,x2);
  65. }
  66. if(d<0)
  67. {
  68. d = ((4*a*c)-pow(b,2))/(2*a);
  69. printf("\nRoot 1 : %f+%fi",((-b)/(2*a)),d);
  70. printf("\nRoot 2 : %f-%fi",((-b)/(2*a)),d);
  71. }
  72. rep();
  73. }
  74.  
  75. cubic()
  76. {float a,b,c,d,x1,x2,x3,disc;
  77. int i;
  78. float expr;
  79. clrscr();
  80. printf("ax^3 + bx^2 + cx + d = 0\n Enter a,b,c,d : \n");
  81. scanf("%f,%f,%f,%f",&a,&b,&c,&d);
  82. i = 0;
  83. while(i<abs(d))
  84. {
  85. expr = a*pow(i,3)+b*pow(i,2)+c*i+d;
  86. if(expr==0)
  87. {
  88. x1=i;
  89. break;
  90. }
  91. expr = a*pow(-i,3)+b*pow(-i,2)+c*(-i)+d;
  92. if(expr==0)
  93. {
  94. x1=-i;
  95. break;
  96. }
  97. i++;
  98. }
  99. printf("Root 1 = %f",x1);
  100. b = b + (a*(x1));
  101. c = c + (b*(x1));
  102. disc = (b*b)-(4*a*c);
  103. if(disc>=0)
  104. {
  105. x2 = (-b+sqrt(disc))/(2*a);
  106. x3 = (-b-sqrt(disc))/(2*a);
  107. printf("\nRoot 2 = %f\nRoot 3 = %f",x2,x3);
  108. }
  109. else
  110. {
  111. disc = ((4*a*c)-pow(b,2))/(2*a);
  112. printf("\nRoot 2 : %f+%fi",((-b)/(2*a)),disc);
  113. printf("\nRoot 3 : %f-%fi",((-b)/(2*a)),disc);
  114. }
  115. rep();
  116. }
  117.  
  118. rep()
  119. {
  120. char c;
  121.  
  122. printf("\n\nDo you want to solve for another equation ? y or n\n");
  123. c=getche();
  124. if(c=='y')
  125. main();
  126.  
  127. }

pero se me hace dificil pasarlo a sintaxis de C#

Igual lo estoy intentado hacer