Форум программистов, компьютерный форум CyberForum.ru

Считать квадратную матрицу в динамический массив. - C++

Восстановить пароль Регистрация
 
Stas0n
3 / 4 / 0
Регистрация: 13.07.2011
Сообщений: 313
03.08.2011, 11:15     Считать квадратную матрицу в динамический массив. #1
нужно просто считать квадратную матрицу в динамический массив. Вот реализация кода:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int main()
{
    int range = 3;
    double **matrix = new double*[range];
    ifstream ifs("aa.txt");
    double q;
    while ( ifs >> q )
    {
        for (int i = 0; i < range; i++)
        {
            for (int j = 0; j < range; j++)
            {
                matrix[i][j] = q;
            }
        }   
    }
    ifs.close();
}
не работает( При отладке ругается вот на эту строчку:
C++
1
matrix[i][j] = q;
Что тут неправильно то?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
03.08.2011, 11:17     Считать квадратную матрицу в динамический массив. #2
hello19, Под двумерный массив память выделили...
А под каждый массив в двумерном кто выделять будет?
dr.curse
 Аватар для dr.curse
386 / 342 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
03.08.2011, 11:17     Считать квадратную матрицу в динамический массив. #3
hello19, мне кажется что проблема в инизылизации.
-=ЮрА=-
Заблокирован
Автор FAQ
03.08.2011, 11:20     Считать квадратную матрицу в динамический массив. #4
Нужно выделить память под каждую строку, ты выделил память только под range указателей на строки, см строку 11 в коде
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int main()
{
        int range = 3;
        double **matrix = new double*[range];
        ifstream ifs("aa.txt");
        double q;
        while ( ifs >> q )
        {
                for (int i = 0; i < range; i++)
                {
                        matrix[i] = new double[range];
                        for (int j = 0; j < range; j++)
                        {
                                matrix[i][j] = q;
                        }
                }       
        }
        ifs.close();
}
Stas0n
3 / 4 / 0
Регистрация: 13.07.2011
Сообщений: 313
03.08.2011, 11:44  [ТС]     Считать квадратную матрицу в динамический массив. #5
ох.. мда... видать сплю еще... Спасибо всем!

Добавлено через 22 минуты
ой че понял то - вед тут мы в итоге матрицу заполним просто последним элементом))))
Yandex
Объявления
03.08.2011, 11:44     Считать квадратную матрицу в динамический массив.
Ответ Создать тему
Опции темы

Текущее время: 13:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru