6 / 6 / 2
Регистрация: 23.03.2009
Сообщений: 198
|
|
1 | |
Как считать матрицу из файла без указания размерности?29.05.2009, 21:30. Показов 7511. Ответов 19
Метки нет (Все метки)
0
|
29.05.2009, 21:30 | |
Ответы с готовыми решениями:
19
Считать матрицу с файла, не зная ее размерности Как сделать ввод матрицы из файла без указания размера Как считать матрицу из файла в двумерный вектор Как считать матрицу 3*3 из файла если он там задан неправильно |
42 / 42 / 8
Регистрация: 22.05.2009
Сообщений: 97
|
|
29.05.2009, 21:55 | 2 |
А что подразумевается под
0
|
6 / 6 / 2
Регистрация: 23.03.2009
Сообщений: 198
|
|
29.05.2009, 21:59 [ТС] | 3 |
То есть матрица будет только введена матрица. Например:
1 2 3 4 5 6 7 8 9 и всё. Размерность матрицы (в данном случае это 3х3) не указана.
0
|
9 / 9 / 2
Регистрация: 01.05.2009
Сообщений: 127
|
|
29.05.2009, 22:08 | 4 |
Если элементы матрицы написаны через пробел,то воспользуйся функциями fgets() и strtok().
0
|
6 / 6 / 2
Регистрация: 23.03.2009
Сообщений: 198
|
|
29.05.2009, 22:16 [ТС] | 5 |
А пример в коде можно показать??? А то я совсем не понимаю
0
|
9 / 9 / 2
Регистрация: 01.05.2009
Сообщений: 127
|
||||||
29.05.2009, 22:40 | 6 | |||||
0
|
42 / 42 / 8
Регистрация: 22.05.2009
Сообщений: 97
|
||||||
29.05.2009, 22:42 | 7 | |||||
Вот я что-то такое предполагаю должно работать:
0
|
692 / 383 / 51
Регистрация: 22.01.2009
Сообщений: 1,135
|
||||||
29.05.2009, 22:48 | 8 | |||||
Даемоник, массив arr инициализирован не правильно...
Должно быть что то типа этого:
0
|
42 / 42 / 8
Регистрация: 22.05.2009
Сообщений: 97
|
||||||
29.05.2009, 23:01 | 9 | |||||
Да-да, извините, был неправ)
Но все же по-моему правильно двумерный массив инициализируется вот так:
0
|
692 / 383 / 51
Регистрация: 22.01.2009
Сообщений: 1,135
|
||||||
29.05.2009, 23:06 | 10 | |||||
Не совсем... смотри:
1
|
42 / 42 / 8
Регистрация: 22.05.2009
Сообщений: 97
|
|
29.05.2009, 23:20 | 11 |
Да, точно) Увидел ошибку)
0
|
692 / 383 / 51
Регистрация: 22.01.2009
Сообщений: 1,135
|
||||||
29.05.2009, 23:36 | 12 | |||||
У меня вот такое получилось:
0
|
6 / 6 / 2
Регистрация: 23.03.2009
Сообщений: 198
|
||||||
30.05.2009, 11:28 [ТС] | 14 | |||||
Кое-что понял, кое-что нет Вот код:
0
|
30.05.2009, 11:46 | 15 |
А у тебя именно такая поставновка задачи или как?
Могу предложить такой вариант. Читаешь весь файл в какой-то текстовый буффер. Дальше тебе нужно понять, сколько в этом буффере чисел, сколько строк и сколько в каждой строке элементов. И давай для простоты будем считать, что файл сформирован правильно (т.е. нет такого, что в одной строке 3 числа, а в другой 4). Для начала проще всего сделать двухпроходную схему. На первом проходе делаешь нарезку буффера на отдельные элементы, полагая, что разделителем между числами являются пробелы и знаки энтера. Нарвавшись на первый энтер, ты уже должен знать количество числе, которые ты нашёл в строковом представлении (сами числа пока можно не запоминать) - т.е. фактически ты вычислил количество столбцов в первой строке файла (и мы считаем, что файл у нас правильный, а потому ты выяснил количество столбцов твоей матрицы). В итоге при первом обходе буффера ты вычислишь сколько всего чисел было в файле, а так же количество столбцов. Одно делишь на другое, получается количество строк. Далее ты создаёшь матрицу с нужными размерностями и на втором проходе её зполняешь
0
|
692 / 383 / 51
Регистрация: 22.01.2009
Сообщений: 1,135
|
||||||
30.05.2009, 12:08 | 16 | |||||
Выглядеть будет примерно так:
1
|
0 / 0 / 1
Регистрация: 19.05.2009
Сообщений: 8
|
|
30.05.2009, 14:37 | 18 |
те надо ее именно вывести?
просто проще рассматривать не как матрицу а как текст. В char массив вносить строки и все.
0
|
6 / 6 / 2
Регистрация: 23.03.2009
Сообщений: 198
|
||||||
30.05.2009, 15:54 [ТС] | 19 | |||||
FunDuck, вот как я использовал ваш код:
1 2 3 4 5 6 7 8 9 как -842150451-842150451-842150451 -842150451-842150451-842150451 -842150451-842150451-842150451 Как избавится от этого неправильного формата???
0
|
692 / 383 / 51
Регистрация: 22.01.2009
Сообщений: 1,135
|
||||||
30.05.2009, 16:22 | 20 | |||||
Ну дак ты матрицу X то вообще не заполняешь
Так как то надо:
1
|
30.05.2009, 16:22 | |
30.05.2009, 16:22 | |
Помогаю со студенческими работами здесь
20
Как считать информацию с файла без расширения? Использование массива без указания размерности Как считать матрицу из файла? Копирование без указания первичного и исходного файла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |