|
@@ -0,0 +1,93 @@
|
|
|
|
+using System;
|
|
|
|
+using System.Collections.Generic;
|
|
|
|
+using System.Linq;
|
|
|
|
+using System.Text;
|
|
|
|
+using System.Threading.Tasks;
|
|
|
|
+
|
|
|
|
+namespace ExamSergeichev
|
|
|
|
+{
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ internal class marriage
|
|
|
|
+ {
|
|
|
|
+ public void checkMarriage(ref program.Pipes[] arr)
|
|
|
|
+ {
|
|
|
|
+ string[] nameMarriagePipes = new string[1];
|
|
|
|
+
|
|
|
|
+ bool checkDiameter = false;
|
|
|
|
+ bool checkAll = false;
|
|
|
|
+ int iterationForNameArray = 0;
|
|
|
|
+ string length = "Соответствует";
|
|
|
|
+ string diameter = "Соответствует";
|
|
|
|
+ string thickness = "Соответствует";
|
|
|
|
+
|
|
|
|
+ int[] diameters = new int[] { 20, 25, 32, 40, 50, 63 };
|
|
|
|
+ Console.WriteLine("В данном списке указываются трубы, которые не соответствуют обозначенным параметрам. Указанные значения в списке являются неверными");
|
|
|
|
+ Console.WriteLine("");
|
|
|
|
+ for (int i = 0; i<arr.Length;i++)
|
|
|
|
+ {
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if (arr[i].length < 3960 || arr[i].length > 4040)
|
|
|
|
+ {
|
|
|
|
+ length = Convert.ToString(arr[i].length);
|
|
|
|
+ checkAll = true;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ for (int j = 0; j<diameters.Length; j++)
|
|
|
|
+ {
|
|
|
|
+ if (arr[i].diameter == diameters[j])
|
|
|
|
+ {
|
|
|
|
+ checkDiameter = true;
|
|
|
|
+ checkAll = true;
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (checkDiameter == false) diameter = Convert.ToString(arr[i].diameter);
|
|
|
|
+
|
|
|
|
+ if (diameter != "Соответствует") thickness = "Не соответствует, т.к не соответствует внешний диаметр трубы";
|
|
|
|
+
|
|
|
|
+ if (arr[i].name == "PN10" && diameter == "Соответствует")
|
|
|
|
+ {
|
|
|
|
+ if (arr[i].thickness < arr[i].diameter * 0.1 && arr[i].thickness > arr[i].diameter * 0.11) thickness = Convert.ToString(arr[i].thickness);
|
|
|
|
+ checkAll = true;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (arr[i].name == "PN16" && diameter == "Соответствует")
|
|
|
|
+ {
|
|
|
|
+ if (arr[i].thickness < arr[i].diameter * 0.135 && arr[i].thickness > arr[i].diameter * 0.14) thickness = Convert.ToString(arr[i].thickness);
|
|
|
|
+ checkAll = true;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (arr[i].name == "PN20" && diameter == "Соответствует")
|
|
|
|
+ {
|
|
|
|
+ if (arr[i].thickness < arr[i].diameter * 0.165 && arr[i].thickness > arr[i].diameter * 0.17) thickness = Convert.ToString(arr[i].thickness);
|
|
|
|
+ checkAll = true;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (arr[i].name == "PN25" && diameter == "Соответствует")
|
|
|
|
+ {
|
|
|
|
+ if (arr[i].thickness < arr[i].diameter * 0.165 && arr[i].thickness > arr[i].diameter * 0.17) thickness = Convert.ToString(arr[i].thickness);
|
|
|
|
+ checkAll = true;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (checkAll == true)
|
|
|
|
+ {
|
|
|
|
+ nameMarriagePipes[iterationForNameArray] = arr[i].name;
|
|
|
|
+ arr[i].isDefective = "Не соответствует";
|
|
|
|
+ Console.WriteLine($"Номер в списке: {i+1} Наименование трубы: {nameMarriagePipes[iterationForNameArray]}, Длина трубы: {length}, Диаметр трубы: {diameter}, Толщина трубы: {thickness}");
|
|
|
|
+ checkAll = false;
|
|
|
|
+ checkDiameter = false;
|
|
|
|
+ i++;
|
|
|
|
+ iterationForNameArray++;
|
|
|
|
+ Array.Resize(ref nameMarriagePipes, nameMarriagePipes.Length + 1);
|
|
|
|
+ }
|
|
|
|
+ else
|
|
|
|
+ {
|
|
|
|
+ i++;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+}
|