У меня будет файл данных, который будет составлен следующим образом.Первая строка будет количеством строк в файле [N] Следующая строка и каждая последующая строка будет иметь три значения.Если значение три >0
, то эта позиция является треугольником.Если значения два и три равны <0
, то эта позиция представляет собой круг.Если только значение три <0
, то эта позиция является прямоугольником.
Я могу написать алгоритмы для манипулирования этими элементами, как только я разделил их на круги, прямоугольники и треугольники, но проблема в том, что я не знаю, как это сделать.
вот код, который я написал до сих пор.
#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;
// MAIN
int main(void)
{
int N=0;
ifstream Hinfo;
// ........................................................
Hinfo.open("Holes");
if (Hinfo.fail())
{
cerr << "Error: open input file error" << endl;
exit(-1);
}
else
cout << "Success: input files opened" << endl;
// ........................................................
Hinfo >> N;
float A[N];
float B[N];
float C[N];
float Rec[];
float Cir[];
float Tri[];
// ........................................................
for(int i=0; i<N; i++)
Hinfo >> A[i] >> B[i] >> C[i];
Hinfo.close();
}
Я действительно не знаю, что делать дальше, или если то, что я сделал до сих пор, - правильный путь.
далее я думал об этом, чтобы найти прямоугольники, треугольники и круги.
for (i=0; i<N; i++)
{
if (C[i] < 0)
{
if (B[i] < 0)
A[i] >> B[i] >> C[i] >> Circle[];
else
A[i] >> B[i] >> C[i] >> Rectangle[];
}
else
A[i] >> B[i] >> C[i] >> Triangle[];
}
Смогу ли я сделать это?Пожалуйста, помогите, мне трудно управлять всеми этими массивами.Есть ли более простой способ разделить все эти данные на массивы треугольников, кругов и прямоугольников?Имейте в виду, что я новичок, поэтому сложный или продвинутый синтаксис может запутать мой хрупкий ум n00b
Спасибо, Люк.