Вот на этих строках:
Код:
for YbNew:=0 to Ybmax do begin // В цикле проверяем их на некоторое условие
for XaNew:=0 to Xamax do begin
AssignFile(outfile, 'outfiles.txt');
ReWrite(outfile);
будет возникать ошибка. Вы на каждой итерации будете открывать файл повторно.
Глупость.
Классическим вариантом решения этой задачи будет:
1) Открыть для чтения исходный файл inFile
2) Открыть для записи новый файл outFile
3) Циклом считывать из него значения
Xa Yb??? (уточните)
3а) Внутри цикла добавлять новые, просчитанные значения по вашему алгоритму.
4) Закрыть inFile
5) Закрыть outFile
6(не обязательно): запомнить во временную переменную имя inFile, удалить его, переименовать outFile (используя временную переменную.)