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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
Кротяка
 Аватар для Кротяка
5 / 5 / 0
Регистрация: 20.12.2010
Сообщений: 374
#1

Считать длину строки текстового файла - C++

07.12.2013, 02:59. Просмотров 1115. Ответов 26
Метки нет (Все метки)

Есть квадратная матрица, которая заполняется данными из файла. Если размерность матрицы больше, чем объём данных в файле, то нужно заполнить недостающие элементы матрицы случайными числами. Пытаюсь сделать так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
cout<<"Введите размерность квадартной матрицы: ";
cin>>s;
int **mas = new int*[s];
 
ifstream fs;
fs.open("input.txt");
int a = fs.getline;
 
if(s > a){
    for(i = a + 1; i < s; i++)
        for(j = a + 1; j < s; j++)
            mas[i][j] = rand() % 19 - 9;
}
Предполагаю, что неправильно считывается длина строки. Вопрос: как правильно её считать? Чтобы условие задачи выполнялось
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2013, 02:59     Считать длину строки текстового файла
Посмотрите здесь:

Как считать с текстового файла? C++
C++ считать матрицу из текстового файла
C++ Считать из текстового файла 3 предложения и вывести их в обратном порядке
Считать из текстового файла целые числа в массив C++
C++ Считать данные из текстового файла и записать их в массив float-ов
Из текстового файла считать слова и превратить их в линейный список C++
Считать из текстового файла только определенные строки C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
09.12.2013, 18:08     Считать длину строки текстового файла #21
Цитата Сообщение от Кротяка Посмотреть сообщение
нужно просто в фигурные скобки добавить для циклов
Это о чём?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Кротяка
 Аватар для Кротяка
5 / 5 / 0
Регистрация: 20.12.2010
Сообщений: 374
09.12.2013, 23:26  [ТС]     Считать длину строки текстового файла #22
alsav22, скобки фигурные, вот так
C++
1
2
3
4
5
6
7
8
            for(i = 0; i < s; i++){
                for(j = 0; j < s; j++){
                    if(!fs.eof())
                        fs>>mas[i][j];
                    else
                        mas[i][j] = rand() % 19 - 9;
                }
            }
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
09.12.2013, 23:31     Считать длину строки текстового файла #23
И что от этого изменится?

Добавлено через 1 минуту
Недостаток такого варианта (if(!fs.eof())) поняли?
Цитата Сообщение от Alex5 Посмотреть сообщение
Последние символы файла могут быть пробелами. eof() вернёт false и мы попытаемся прочитать число, когда в файле остались одни пробелы. См.рис. ( В файле: "1111 2222 3333 " )
Кротяка
 Аватар для Кротяка
5 / 5 / 0
Регистрация: 20.12.2010
Сообщений: 374
09.12.2013, 23:58  [ТС]     Считать длину строки текстового файла #24
alsav22, не будет пустого поля
по крайней мере мне помогло

Добавлено через 11 секунд
недостатка не выявил

Добавлено через 10 секунд
возможно пока ещё
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
10.12.2013, 00:00     Считать длину строки текстового файла #25
Цитата Сообщение от Кротяка Посмотреть сообщение
не будет пустого поля
В файле не будет?
Кротяка
 Аватар для Кротяка
5 / 5 / 0
Регистрация: 20.12.2010
Сообщений: 374
10.12.2013, 00:03  [ТС]     Считать длину строки текстового файла #26
alsav22, в сформированной матрице

Добавлено через 1 минуту
ну т.е. не будет значения -8234414....(и т.д.)
как на скриншоте
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.12.2013, 00:23     Считать длину строки текстового файла
Еще ссылки по теме:

C++ Считать из текстового файла числа и вывести их сумму
Из текстового файла считать матрицу и записать ее в бинарный файл C++
Как считать информацию с текстового файла? C++
C++ Из текстового файла считать массив целых чисел
C++ Считать данные текстового файла в массив

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

Или воспользуйтесь поиском по форуму:
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
10.12.2013, 00:23     Считать длину строки текстового файла #27
Если в файле, то смотря как его создавать. Если вручную, то как напишите, так и будет. Если в коде записывать в файл числа через пробел, то будет. Поэтому рекомендую вариант, предложенный Alex5, который будет правильно работать в обоих случаях.

Добавлено через 19 минут
Цитата Сообщение от Кротяка Посмотреть сообщение
ну т.е. не будет значения -8234414....(и т.д.)
как на скриншоте
Значит в файле нет пробела за последним числом.
Yandex
Объявления
10.12.2013, 00:23     Считать длину строки текстового файла
Ответ Создать тему
Опции темы

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