Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Builder
Войти
Регистрация
Восстановить пароль
 
nenahov
0 / 0 / 2
Регистрация: 11.10.2016
Сообщений: 106
1

Не могу заполнить матрицу из файла

18.05.2018, 19:42. Просмотров 110. Ответов 1
Метки нет (Все метки)

Добрый день. Есть квадратная матрица, которая заполняется из текстового файла (если в текстовом файле меньше значений чем в матрице то недостающие заполняются рандомом). В консоле все нормально и хорошо работает, а вот в StringGrid(SG1) не получается((
Вот рабочий код в консоле, как его адаптировать под грид:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void readFile(int** matrix, int n)
{
ifstream fin("file.txt");
if(!fin)
{
cout << "\nError" << endl;
}
for(int i = 0; i < n; i++)
{
for(int j = 0; j < n; j++)
{
if(!(fin >> matrix[i][j])) matrix[i][j] = rand() / (RAND_MAX + 1) * (10 - 0) - 0;
}
}
fin.close();
}
А вот обработчик события кнопки "Заполнить из файла":
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void __fastcall TForm1::RadioButton3Click(TObject *Sender)
{
   RadioButton1->Enabled = false;
   RadioButton2->Enabled = false;
   randomize();
   ifstream fin("file.txt");
   if(!fin){
   MessageDlg("Ошибка открытия файла!", mtError, TMsgDlgButtons()<<mbOK,0);
   }
   for(int i = 0; i < n; i++){
      for(int j = 0; j < n; j++){
      //Вот тут не знаю что писать((((
      }}
   fin.close();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2018, 19:42
Ответы с готовыми решениями:

заполнить матрицу
Всем привет,подскажите способ какой-нибудь, как мне массив двумерный заполнить...

Создать матрицу, размерностью N*N и заполнить ее по спирали (от a[0][0] в сторону a[0][n-1]) от 1 до N^2
Создать матрицу, размерностью N*N и заполнить ее по спирали (от a в сторону a)...

Заполнить матрицу случайными числами, и вычислить сумму элементов побочной диагонали
создать приложение, которое запрашивает размерность квадратного двумерного...

Заполнить матрицу с файла
Всем привет,есть нужда заполнить матрицу разными способами для дальнейшей...

Заполнить матрицу из файла
Нужно с файла заполнить массив чисел 5х5 делаю так: 1) Файл .тхт 12232...

1
lifeforce
205 / 164 / 74
Регистрация: 27.09.2010
Сообщений: 987
18.05.2018, 23:11 2
nenahov,
чтоб заполнить StringGrid(SG1) все просто.
сначала надо знать как располагаются данные.
заполнение StringGrid(SG1) примерно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
TStringList * Lst = new TStringList;//
   Lst->LoadFromFile("file.txt");
        int Index=0;        
        SG1->RowCount = (Lst->Count)/SG1->ColCount;//делим на количество колонок
        for(int i=0;i<SG1->ColCount;i++)
                for(int j=0;j<SG1->RowCount;j++)
                {
                        SG1->Cells[i][j]=Lst->Strings[Index];
                        Index++;
                }
 
delete Lst;
этот пример заполняет если файл записан (0 колонка и длина строк) (1 колнка и длина строк)... и.т.д
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.05.2018, 23:11

Классы. Не могу заполнить массив из файла
Класс: class Class1 { static public void MassivIzFaila(int...

Заполнить квадратную матрицу данными из файла и найти столбец с максимальной суммой элементов
Сама суть такова Программно сформировать файл data.txt содержащий 25...

Не могу считать матрицу из файла в динамический массив
Вот проблемный кусок программы: fstream f (strConst); if (! f) {...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru