У меня есть входной файл fstream, который содержит [N] строк или элементов.Я написал код, чтобы решить, какие элементы являются треугольниками, а какие прямоугольниками, а какие кругами.Я должен выделить только элементы треугольника и затем сравнить их, чтобы увидеть, равны ли они +/- 0,1 площади всех остальных элементов треугольника.Затем я должен указать равные пары элементов в виде заглавных букв.
Вот мой код, но он работает неправильно.Он выводит L & L, что неверно.Должно быть написано E & L, потому что два идентичных треугольника в моем массиве находятся на строках 5 и 12, а не 12 и 12.Как мне это исправить?
int ItmM = 0;
ItmN = 0;
int j = 0;
for (int i=0; i<M; i++)
{
if (btype[i] == Triangles)
{
TA[i] = (0.5 * (D[i] * E[i]));
for (int j=0; j<i; j++)
{
if (TA[i] - 0.1 < TA[j] && TA[j] < TA[i] + 0.1)
{
TA[j] = TA[i];
ItmM = i;
ItmN = j;
cout << "4. Triangular blocks that are the same size = "
<< (char)('A' + ItmM) << "&" << (char)('A' + ItmM)
<< endl;
}
}
}
}
Я дважды редактировал приведенный выше код.Это все еще выводит L & L.Должно быть E & L, (5 & 12)