Сравнение элементов из двух списков, которые имеют одинаковый ввод - PullRequest
0 голосов
/ 06 июля 2019

У меня есть несколько чисел, и я применяю их к двум различным уравнениям, затем сохраняю результаты в двух разных списках, я хочу сравнить элементы этих списков, но только те, которые были результатом одного и того же ввода. поэтому я хочу, чтобы код взял элемент из первого списка и другой элемент из второго списка, который был результатом того же ввода, что и элемент первого списка.

Входные данные - это числа, импортированные из листа Excel

Например, если у меня есть ввод чисел 1,2,3,4,5 и два уравнения х + у = ?? , х ^ 2 + у ^ 2 = ??

3 + 4 = 7, 3 ^ 2 + 4 ^ 2 = 25

Я хочу отследить элементы 25, 7 из двух списков, чтобы получить входные данные (3,4)

   for (int m = 0; m < Weights.Count; m++)
       {
         int offset = m * ListCranelocations.Count;

          for (int i = 0; i < ListCranelocations.Count; i++)
            {
                for (int j = 0; j < ListPickLocations.Count; j++)
                {
                    double x = ListCranelocations[i].Lat - ListPickLocations[j].Lat;
                    double y = ListCranelocations[i].Lng - ListPickLocations[j].Lng;
                    R1[i] = Math.Sqrt(Math.Pow(x, 2) + Math.Pow(y, 2));

                    if (R1[i] > Clearance)
                    {

                        result1[i + offset, j] = Weights[m] * R1[i];

                        //Console.WriteLine(result1[i, j]);
                    }

                }
            }
        }


for (int i = 0; i < ListCranelocations.Count; i++)
        {
            for (int j = 0; j < ListPickLocations.Count; j++)
            {
                for (int k = 0; k < ListSetlocations.Count; k++)
                {
                    double C1 = ListPickLocations[j].Lat - ListCranelocations[i].Lat;
                    double V1 = ListPickLocations[j].Lng - ListCranelocations[i].Lng;
                    double C2 = ListSetlocations[k].Lat - ListCranelocations[i].Lat;
                    double V2 = ListSetlocations[k].Lng - ListCranelocations[i].Lng;
                    double C3 = Math.Sqrt(Math.Pow(C1, 2) + Math.Pow(V1, 2));
                    double V3 = Math.Sqrt(Math.Pow(C2, 2) + Math.Pow(V2, 2));

                    Seta = Math.Acos(((C1 * C2) + (V1 * V2)) / (C3 * V3));
                    Angles.Add(Seta * (180 / Math.PI));

                    counter++;

                }
            }
        }
...