Browse Source

v0.5

master
parent
commit
68d62b61fe
  1. 22
      linear/Program.cs

22
linear/Program.cs

@ -52,8 +52,8 @@ namespace linear
{ {
Points.Add(new Point Points.Add(new Point
{ {
X = (double)matrix[i, 2] / matrix[i, 1], Y = matrix[i, 2] / matrix[i, 1],
Y = (double)matrix[i, 2] / matrix[i, 0], X = matrix[i, 2] / matrix[i, 0],
Line = i + 1 Line = i + 1
}); });
if (i == 0) if (i == 0)
@ -75,13 +75,13 @@ namespace linear
foreach (Point p in Points) WriteLine("{0:00.00} {1:00.00}", p.X, p.Y); foreach (Point p in Points) WriteLine("{0:00.00} {1:00.00}", p.X, p.Y);
Write("\n\n"); Write("\n\n");
WriteLine("{0:0.0} {1:0.0}\n\n", xMin, yMin); WriteLine("X: {0:0.0} {2} \nY: {1:0.0} {3}\n\n", xMin, yMin, indexMinX, indexMinY);
int[] indexes = new int[3]; int[] indexes = new int[workCount];
if(indexMinX != indexMinY) if(indexMinX != indexMinY)
{ {
indexes[0] = indexMinX - 1; indexes[0] = indexMinY - 1;
indexes[1] = indexMinY - 1; indexes[1] = indexMinX - 1;
for (int i = 0; i < 3; i++) for (int i = 0; i < 3; i++)
if (i != indexes[0] && i != indexes[1]) indexes[2] = i; if (i != indexes[0] && i != indexes[1]) indexes[2] = i;
@ -99,7 +99,8 @@ namespace linear
WriteLine(Points.Count + "\n\n"); WriteLine(Points.Count + "\n\n");
foreach (Point p in Points) WriteLine("{0} {1} {2}", p.X, p.Y, p.Line); // y = x , x =y foreach (Point p in Points) WriteLine("{0:0.0} {1:0.0} {2}", p.X, p.Y, p.Line);
WriteLine("\n\n");
if (Points[Points.Count - 1].X < 0 || Points[Points.Count - 1].Y < 0) Points.RemoveAt(Points.Count - 1); if (Points[Points.Count - 1].X < 0 || Points[Points.Count - 1].Y < 0) Points.RemoveAt(Points.Count - 1);
@ -111,15 +112,15 @@ namespace linear
} }
else { else {
double tempQ = 0d; double tempQ = 0D;
for (int i= 1; i < 4; i++) for (int i= 1; i < 4; i++)
{ {
WriteLine("{0} {1} {2}", i, Points[Points.Count - i].X, Points[Points.Count - i].Y); WriteLine("{0} {1:0.0} {2:0.0}", i, Points[Points.Count - i].X, Points[Points.Count - i].Y);
double t = Result(matrix, Points[Points.Count - i].X, Points[Points.Count - i].Y); double t = Result(matrix, Points[Points.Count - i].X, Points[Points.Count - i].Y);
if (tempQ < t) tempQ = t; if (tempQ < t) tempQ = t;
} }
WriteLine(tempQ); WriteLine("{0:0.0}", tempQ);
} }
@ -142,6 +143,7 @@ namespace linear
public static double Result(double[,] matrix, double x, double y) public static double Result(double[,] matrix, double x, double y)
{ {
double res; double res;
WriteLine("\t{0} * {1:0.0} + {2} * {3:0.0}", matrix[3, 0], x, matrix[3, 1], y);
res = matrix[3, 0] * x + matrix[3, 1] * y; res = matrix[3, 0] * x + matrix[3, 1] * y;
return res; return res;
} }

Loading…
Cancel
Save