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

Чтение уравнения из файла - C++

Восстановить пароль Регистрация
 
Resume
 Аватар для Resume
113 / 103 / 34
Регистрация: 08.11.2013
Сообщений: 588
Записей в блоге: 5
19.05.2014, 00:36     Чтение уравнения из файла #1
Здравствуйте уважаемые форумчане!
Мне необходима ваша помощь.
Я считываю матрицу из файла:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
n = stroki();
    m = stolbci();
    a = new double [n];
    b = new double *[n];
    for( int i = 0; i < n ; i++)
    b[i] = new double [m];
    ifstream in ("input.txt");
    if(!in)
    {
         cout << " Файл не обнаружен" << endl; 
    } 
    else
    {
    for (int i = 0; i < n  ; i++)  
    {
        for (int j = 0; j < m - 1; j++) 
        {
            in >> b[i][j];
        }
        in >> a[i]; 
    }
    }
    in.close();
}
Содержимое файла:
2 4 6
1 3 5
Вопрос такой: почему у меня на экран во 2 столбеце возле числа пишет какие-то странные значения.
Пояснение к фрагменту кода:
1) Я решаю СЛАУ и поэтому загоняю все столбцы кроме последнего в основую матрицу(B[i][j]), а последний столбец в столбец свободных членов(a[i]);
2) Количество строк и столбцов считает верно
3) Сам скриншот ниже.

На введенные размерности строк и столбцов не обращайте внимание!!

Помогите пожалуйста, как-нибудь!
Заранее очень благодарен

Добавлено через 5 минут
Простите, как сделать, чтобы скриншот отображался на странице?
Просто почему - то не получилось! Не злитесь только!!
Миниатюры
Чтение уравнения из файла  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2014, 00:36     Чтение уравнения из файла
Посмотрите здесь:

C++ Чтение из файла.
Чтение из файла C++
C++ Чтение из файла
чтение из файла C++
C++ Решение уравнения. Чтение из файла значений и запись результатов в файл
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
volvo
Супер-модератор
 Аватар для volvo
21827 / 14190 / 3956
Регистрация: 22.10.2011
Сообщений: 25,074
Записей в блоге: 2
19.05.2014, 03:37     Чтение уравнения из файла #2
Цитата Сообщение от Resume Посмотреть сообщение
почему у меня на экран во 2 столбеце возле числа пишет какие-то странные значения
Потому что выделяешь ты место под матрицу n строк на m столбцов, а читаешь только m-1 столбцов в каждой строке. Неинициализированные элементы матрицы и отображаются "странными значениями"...
Resume
 Аватар для Resume
113 / 103 / 34
Регистрация: 08.11.2013
Сообщений: 588
Записей в блоге: 5
19.05.2014, 09:44  [ТС]     Чтение уравнения из файла #3
у меня всё инициализировано: и m, и n.
nmcf
4315 / 3736 / 1259
Регистрация: 14.04.2014
Сообщений: 14,642
19.05.2014, 09:59     Чтение уравнения из файла #4
Почему цикл по j до < m-1, а не до < m?
Resume
 Аватар для Resume
113 / 103 / 34
Регистрация: 08.11.2013
Сообщений: 588
Записей в блоге: 5
19.05.2014, 14:01  [ТС]     Чтение уравнения из файла #5
потому что мне надо все столбцы кроме последнего загнать в матриуц B[i][j], чтобы далее считанная матрица могла быть решена матричным методом или с помощью формул крамера!
А последний столбец,который я не считал в матрицу B[i][j], а загоняю в столбец свободных членов A[i].

Добавлено через 3 часа 35 минут
Печальная ситуация((
volvo
Супер-модератор
 Аватар для volvo
21827 / 14190 / 3956
Регистрация: 22.10.2011
Сообщений: 25,074
Записей в блоге: 2
19.05.2014, 17:10     Чтение уравнения из файла #6
Цитата Сообщение от Resume Посмотреть сообщение
у меня всё инициализировано
Что у тебя инициализировано?

Еще раз: ты создал матрицу B : n строк на m столбцов (зачем создавать m столбцов, если реально нужен m-1 - это выше моего понимания). При создании элементы матрицы заполнились мусором, ибо new не обязана обнулять выделенную память. Читаешь из файла в матрицу B сколько столбцов? m-1, правда? Что происходит с оставшимся столбцом? В нем все так же присутствует мусор. Он тебе и отображается. Напиши так:
C++
1
2
3
4
    a = new double [n]();
    b = new double *[n];
    for( int i = 0; i < n ; i++)
        b[i] = new double [m]();
- значения будут обнуляться, увидишь разницу. Мусора не будет, будут нули. Может, хоть так ты поймешь, что происходит, и как это исправить...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2014, 19:00     Чтение уравнения из файла
Еще ссылки по теме:

C++ Чтение из файла
C++ Чтение из файла
Чтение файла C++

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

Или воспользуйтесь поиском по форуму:
Resume
 Аватар для Resume
113 / 103 / 34
Регистрация: 08.11.2013
Сообщений: 588
Записей в блоге: 5
19.05.2014, 19:00  [ТС]     Чтение уравнения из файла #7
Без фразы: выше моего понимания, никак?(Мог, конечно и по умному не говорить так)!
Нули увидел, осталось догадаться, как убрать их!

Добавлено через 19 минут
Вопрос такой ещё: откуда и где берется мусор?
Yandex
Объявления
19.05.2014, 19:00     Чтение уравнения из файла
Ответ Создать тему
Опции темы

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