Форум программистов, компьютерный форум, киберфорум
Наши страницы

C++ Builder

Войти
Регистрация
Восстановить пароль
 
nenahov
0 / 0 / 0
Регистрация: 11.10.2016
Сообщений: 101
#1

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

18.05.2018, 19:42. Просмотров 93. Ответов 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
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Не могу заполнить матрицу из файла (C++ Builder):

заполнить матрицу - C++ Builder
Всем привет,подскажите способ какой-нибудь, как мне массив двумерный заполнить по принципу бинарных отношений, матрица размерностью будет N...

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

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

Заполнить матрицу из файла - C++
Нужно с файла заполнить массив чисел 5х5 делаю так: 1) Файл .тхт 12232 11100 12032 12122 12131 2) вот пытаюсь заполнить...

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

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

1
lifeforce
201 / 161 / 44
Регистрация: 27.09.2010
Сообщений: 966
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
Привет! Вот еще темы с ответами:

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

Не могу считать матрицу из файла в динамический массив - C++
Вот проблемный кусок программы: fstream f (strConst); if (! f) { cout&lt;&lt;&quot;Error_3&quot;; return 1; } int...

Почти готовая программа с матрицами, не могу загрузить матрицу из файла - C++
Косяк в функции на 32 строке. Собственно мне нужно узнать сколько символов записано в файл, чтобы затем загрузить одномерную матрицу и...

Заполнить матрицу А[N,M] с файла символами, если символы повторяются в рядах то эти же символы заменить на их коды. - Turbo Pascal
Заполнить матрицу А с файла символами, если символы повторяются в рядах то эти же символы заменить на их коды. Добавлено через 4 часа...


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

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

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