Показать сообщение отдельно
Старый 03.06.2008, 23:06     # 7
Emelman
Full Member
 
Аватар для Emelman
 
Регистрация: 30.07.2004
Адрес: Санкт-Петербург
Пол: Male
Сообщения: 544

Emelman Гурее всех гурых :-)
Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)Emelman Гурее всех гурых :-)
В конечном итоге с классами не разобрался. Массив заполнил использовав совет spike'а. Только немного изменил код, подогнав под свои нужды.
Сейчас возникла другая трудность. В программе участвуют 10 массивов одинакового размера, со всеми ними будут производиться одни и те же действия, поэтому пришёл к выводу, что нужно написать функцию, как в старом добром "Borland C++" (не Builder), и вызывать её для каждого массива. Для примера:
Код:
void vvodmass (int mass[5][5]) //объявляем функцию
{int i,j;
for (i=0; i<5; i++)
for (j-0; j<5; j++)
cin>>mass[i][j];}

void main()
{int a[5][5], b[5][5];
vvodmass (a); //вызываем функцию для массива "a"
vvodmass (b); //вызываем функцию для массива "b"
}
Так вот решил написать нечто подобное, но не пойму как правильно объявлять функцию. Написал примерно, как в примере:
Код:
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void diagramma(int mass[37][5])
{int i,j,otstup;

otstup=10;
for (i=0; i<35; i++)
{
Image1->(!Здесь выскакивает ошибка!)Canvas->Brush->Color=(TColor)RGB(0,255,0);
Image1->Canvas->Rectangle . . .
//дальше идёт процесс рисования на элементе Image1 столбиков диаграммы.
//Чтобы не грузить вас формулами, стёр всё ненужное.
}
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{int mass1[37][5],mass2[37][5],mass3[37][5],mass4[37][5],mass5[37][5];
int mass6[37][5],mass7[37][5],mass8[37][5],mass9[37][5],mass10[37][5];

diagramma (mass1);
}
Не знаю правильно ли я описал функцию и будет ли она работать, но при таком написании функции выскакивает лишь одна ошибка:
Цитата:
[C++ Error] Unit1.cpp(29): E2451 Undefined symbol 'Image1'
Подскажите, пожалуйста, где я, что не так написал. Почему программа перестала понимать что такое "Image1"?

P.S. Если забыть про остальные массивы, и прописать процесс рисования не как функцию, то диаграмма рисуется просто замечательно.
Emelman вне форума