#include <fstream.h>
#define N 10
void main()
{ ifstream ifs("data.dat",ios::in);
int *ar=new int [N]; int i,a,b;
for(i=0;i<N;i++) ofs>>ar;
for(i=0;i<N-4;i++)
if (ar==1 && ar[i+1]==3)
{ a=ar[i+2]; b=ar[i+3]; break; }
// Делаем что-то с A и B
}
загрузка файла в массив, и далее поиск по массиву
нужен код, который бы выполнял загрузку файл в массив. а потом надо сделать по массиву поиск чисел. числа выглядят так 1 3, надо имеено найти в такой последовательности. после того как нашли надо сохранить следующие два числа после найденных в переменные А иВ.:)
Что-то типа (для 10 чисел):
а если количечство чисел в файле не известно.
а какой код отвечает за загрузку файла в массив?
так поможет кто нить?
Может можно прочесть побайтно?
Есть вариант с загрузкой всего файла в память, есть такой класс как - TMemoryStream
а там уже считать побайтно прямо из памяти... всеравно что загнал в массив.
Цитата:
а если количечство чисел в файле не известно.
а какой код отвечает за загрузку файла в массив?
Можно вообще без массива
Код:
#include <fstream.h>
#define N 10
void main()
{ ifstream ifs("data.dat",ios::in);
int *ar=new int [2]; int i,a,b;
ofs>>ar[1];
while (!ofs.eof())
{ ar[0]=ar[1]; ofs>>ar[1];
if (ar[0]==1 && ar[1]==3) ofs>>a>>b; }
// Делаем что-то с A и B
delete ar;
}
#define N 10
void main()
{ ifstream ifs("data.dat",ios::in);
int *ar=new int [2]; int i,a,b;
ofs>>ar[1];
while (!ofs.eof())
{ ar[0]=ar[1]; ofs>>ar[1];
if (ar[0]==1 && ar[1]==3) ofs>>a>>b; }
// Делаем что-то с A и B
delete ar;
}
всем спасибо за помощь, разобрался.