} bool getLegend ()
{legend;
} bool getAxis ()
{axis;
} void setLegend (bool leg)
{= leg;
} void setAxis (bool ax)
{= ax;
}
public class Reader
{string fileName; string [] inputTxt; double [,] matrix; double [,] table; int rows; int cols; System.Globalization.NumberFormatInfo numberFormat;
Reader (string name)
{= name;
}
void ReadTable (out double [,] table)
{= new System.Globalization.NumberFormatInfo ();. CurrencyDecimalSeparator = ".";
// забираємо весь текст з файлу по рядках [] fullText = File.ReadAllLines (fileName);
// забираємо перший рядок в масив по рядках розділеним пропуском [] aloneString = fullText [0]. Split (new char [] {''});
// масив куди будуть поміщені значення файлу = new double [fullText.Length, aloneString.Length];
// double [,] temp = new double [fullText.Length, aloneString.Length];
(int i = 0; i
{[0, i] = double.Parse (aloneString [i], numberFormat);
}
(int i = 1; i
{= fullText [i]. Split (new char [] {''}); (int j = 0; j
{[i, j] = double.Parse (aloneString [j], numberFormat);
}
}
}
}
public static class Writer
{static string fileName; static string [] inputTxt; static double [,] matrix;
static int rows; static int cols; static System.Globalization.NumberFormatInfo numberFormat;
Writer ()
{= new System.Globalization.NumberFormatInfo ();. CurrencyDecimalSeparator = ".";
}
static void WriteTable (string nameFile, double [,] table)
{. fileName = nameFile;. matrix = table;
(Writer.matrix! = null)
{= matrix.GetLength (0); = matrix.GetLength (1); = new string [rows];
(int i = 0; i
{(int j = 0; j
{[i] + = matrix [i, j]. ToString ("0.0000", numberFormat); (j
{[i] + = "";
}
}
}. WriteAllLines (nameFile, inputTxt);
}
}
}
public partial class Form1: Form
{
bm;
bool goodGo = false;
// число шматків (критеріїв) float countOfPie;
// кут для кусковfloat degrees;
// число целейint aims;
// таблиця весовDouble [,] tables; double [,] fromFileTable; static int rows; static int cols;
// не вірно заповнені рядиint [] wrongRows; cR = 0, cG = 0, cB = 0; Settings settings = new Settings ();
Form1 ()
{();
}
// отримання даних для таблиці та рісованіяvoid getData ()
{= (int) numericUpDown1.Value; = 360/countOfPie; =
}
// створення і заповнення таблиці з формиvoid createTableOfWeight ()
{= new double [rows, cols]; (int i = 0; i
{(int j = 0; j
{[i, j] = Convert.ToDouble (dataGridView1.Rows [i]. Cells [j]. Value);
}
}
/* (int i = 0; i
{(int j = 0; j
{. AppendText (tables [i, j]. ToString ());. AppendText ("");
}. AppendText ("/ n");
}
*/
}
// перевірка правильного заповнення рядовBoolean checkTable ()
{
[] tempTable = new int [rows]; check = false; sum = 0; k = 0; (int i = 0; i
{= 0;
(int j = 0; j