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

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

Войти
Регистрация
Восстановить пароль
 
virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
#1

Как записать все числа из файла в вектор? - C++

09.06.2014, 15:21. Просмотров 404. Ответов 9
Метки нет (Все метки)

Числа хранятся в таком формате,

слово Fail потом идет набор чисел и заканчивается двумя пустыми строчками и потом повторяется ниже указан пример

bla bla blal fail 9.755 0 2 55 25 2 52 52 2 2.525 2.2 52.5.

dahkja ai a aia fail 1515.153315 5151.5 5 44

и так далее
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.06.2014, 15:21     Как записать все числа из файла в вектор?
Посмотрите здесь:

Записать в этот же массив сначала все положительные числа и нули, а затем все отрицательные C++
считать в вектор пар все числа, отличные от нуля C++
Записать в вектор строки разной длины из файла C++
C++ Записать в файл g все четные числа файла f, а в файл n-все нечетные
C++ Записать в данный массив сначала все отрицательные числа и нули, затем все положительные, сохраняя порядок их следования
Сформировать вектор, в который записать номера строк, в которых все элементы массива одинаковы. C++
Считать вектор из файла, записать вектор в файл C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
tehnar5
31 / 31 / 12
Регистрация: 03.05.2011
Сообщений: 84
09.06.2014, 16:38     Как записать все числа из файла в вектор? #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <vector>
 
using namespace std;
 
char a[1000];
double x;
vector <double> vec;
 
int main()
{
    freopen(".in", "r", stdin);
    freopen(".out", "w", stdout);
    while (scanf("%s", a) != EOF)
    {
        x = atof(a);
        if (x != 0 || a[0] == 0)
                    vec.push_back(x);
    }
}
Даже не является обязательным условие на наличие слова fail
virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
09.06.2014, 17:21  [ТС]     Как записать все числа из файла в вектор? #3
там могут быть и другие числа, но нужно именно те которые после слова fail
Avazart
7062 / 5239 / 261
Регистрация: 10.12.2010
Сообщений: 23,036
Записей в блоге: 17
09.06.2014, 17:25     Как записать все числа из файла в вектор? #4
Через регулярные выражения, ну или "руками" разбор строки.
virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
09.06.2014, 17:36  [ТС]     Как записать все числа из файла в вектор? #5
регулярных выражений нет же в плюсах , а руками нереально, ибо файл огромный
Nekto
342 / 287 / 10
Регистрация: 23.03.2012
Сообщений: 838
09.06.2014, 17:37     Как записать все числа из файла в вектор? #6
Цитата Сообщение от virtuos553 Посмотреть сообщение
регулярных выражений нет же в плюсах , а руками нереально, ибо файл огромный
http://www.cplusplus.com/reference/regex/ тадам
tehnar5
31 / 31 / 12
Регистрация: 03.05.2011
Сообщений: 84
09.06.2014, 17:44     Как записать все числа из файла в вектор? #7
Как это нереально? За размер файла спокойно же делается.
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
25
26
27
28
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <vector>
 
using namespace std;
 
char a[1000];
double x;
vector <double> vec;
 
int main()
{
    freopen(".in", "r", stdin);
    freopen(".out", "w", stdout);
    while (scanf("%s", a) != EOF)
    {
        
        x = atof(a);
        if ((x != 0 || a[0] == '0') && flag) // число, после фейла
                    vec.push_back(x);
        if (x == 0 && a[0] != '0') // не число
             flag = 0;    
        if (strcmp(x, "fail") == 0) // fail
            flag = 1;
        
    }
}
Avazart
7062 / 5239 / 261
Регистрация: 10.12.2010
Сообщений: 23,036
Записей в блоге: 17
09.06.2014, 20:20     Как записать все числа из файла в вектор? #8
Цитата Сообщение от virtuos553 Посмотреть сообщение
регулярных выражений нет же в плюсах , а руками нереально, ибо файл огромный
Есть boost, есть другие фреймворки.

Добавлено через 1 минуту
Цитата Сообщение от virtuos553 Посмотреть сообщение
а руками нереально
Читай Страуструпа ищи пример калькулятора.
virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
10.06.2014, 13:44  [ТС]     Как записать все числа из файла в вектор? #9
я его читал, там пример обратного польского калькулятора, если мне память не изменяет, там показан пример использования стеков
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2014, 14:19     Как записать все числа из файла в вектор?
Еще ссылки по теме:

Все четные числа из файла записать во второй файл, а нечетные — в третий файл C++
Как из файла записать в вектор? C++
C++ Как записать вектор в файл?
C++ Записать каждые 16 символов из файла в вектор
C++ Записать в целочисленный массив все числа из указанного файла (std::getline, работа с файлами)

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

Или воспользуйтесь поиском по форуму:
Avazart
7062 / 5239 / 261
Регистрация: 10.12.2010
Сообщений: 23,036
Записей в блоге: 17
10.06.2014, 14:19     Как записать все числа из файла в вектор? #10
Цитата Сообщение от virtuos553 Посмотреть сообщение
я его читал,
Ну так почему проблема с разбором строки ?
Yandex
Объявления
10.06.2014, 14:19     Как записать все числа из файла в вектор?
Ответ Создать тему
Опции темы

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