помогите плз найти ошибку

программирование ошибка си++

пишу прогу на си ++ в сибилдере...
возникает ошибка range check error, прошу прощения за корявость текста, ничего умнее я придумать не смог

{
//---------------присвоение переменным значений------------------------------
int x1,x2,x3,i,z,c,j,f;
String e1,e2,e3,e4,e5;
z=0;
c=0;
x1=StrToInt(Edit1->Text); // номер столбца
x2=StrToInt(Edit3->Text); // число записей
x3=StringGrid1->ColCount; // колличество отображаемых столбцов
e1=Edit2->Text; // Имя столбца
e2=Edit6->Text; // имя бд
e3=Edit7->Text; // имя таблицы
e4=Edit3->Text; // колл во записей
e5=Edit1->Text; // номер столбца
//---------------тело генератора---------------------------------------------
mass[x1][0]=e1; // запись имени столбца в массив
mass[0][0]="Num"; // присвоение значения элементу массива
StringGrid1->Cells[x1][0]= mass[x1][0]; // отображение имени столбца
StringGrid1->RowCount=x2; // увеличение числа строк
//---------------проверка символов в имени бд--------------------------------
for(f=0; f<StrToInt(Edit6->Text.Length()); f++)
if (e2[f]>=65 && e2[f]<=90 || e2[f]>=97 && e2[f]<=122 || e2[f]==StrToInt('_'))
{ Edit6->Text="";
Edit6->SetFocus(); }
else {("Некорректные символы в имени Базы данных.Вводите только английские символы,вместо пробела вводится нижняя черта."); }
.............
//---------------генератор--------------------------------
if (x1>x3) {ShowMessage ("Число столбцов не соответсвтует отображаемому числу элементов"); } // проверка на отображение колличества элементов
else
{ for (i = 1; i<=x2; i++) //заполнение столбца случайными данными из массива mas
{z=random(100000); // рандом
c=z%(y1-1); // ограничение рандома
mass[x1][i]=*mas[c]; // занесение случайных данных в массив
StringGrid1->Cells[x1][i]=mass[x1][i]; // отображение данных ввыеденных в массив
for (j = 1; j<=x2; j++) { // нумерация 0 столбца
mass[0][j]=j; // нумерация нулевого столбца в массиве
StringGrid1->Cells[0][j]=mass[0][j];//отображение нулевеого столбца в массиве.
}
if (x3>x1) { StringGrid1->ColCount=x3+1;} // увеличение отображаемых столбцов на 1
Edit3->Enabled=false; // закрепление кол-ва строк
Edit6->Enabled=false; // закрепление имени бд
Edit7->Enabled=false; // закрепление имени таблицы
}}}

Примечание:
ошибка на этапе выполнения
Ответы:
ошибка на етапе компиляции или выполнения?
Даже незнаю, полностю потерял квалификацию читать чужие коды((( могу посоветовать пересмотреть тела циклов - походу трабл там


14 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.