0 / 0 / 0
Регистрация: 20.06.2022
Сообщений: 3
1

Как считать строки из файла до определенного места

18.07.2022, 14:20. Показов 839. Ответов 3

Author24 — интернет-сервис помощи студентам
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include<iostream>
#include<string>
#include<fstream>
 
using namespace std;
 
class Com_1 {
public:
    string Name;
    int doh;
};
 
int main()
{
    
    string s;
 
    setlocale(LC_ALL, "Ru");
 
    ifstream file("myFile.txt");
 
    if (!file.is_open()) 
 
        cout << "Ошибка!" << endl;
    
        while (!file.eof()) {
 
            getline(file, s);
 
            cout << s << endl;
 
        }
    
        if (file) {
            string word;
            int number;
            while (file >> word) {
                if (word == "Прибыль:") {
                    file >> number;
                    
                }
            }
    }
 
 
 
    file.close();
 
    return 0;
}
файл:
Название:Lendexp

Январь
Доходы: 2
Зарплата: 1
Прибыль: 1

Февраль
Доходы: 4
Зарплата: 5
Прибыль: -1

Март
Доходы: 5
Зарплата: 2
Прибыль: 3

Апрель
Доходы: 6
Зарплата: 2
Прибыль: 4

Май
Доходы: 5
Зарплата: 3
Прибыль: 2

Июнь
Доходы: 6
Зарплата: 1
Прибыль: 5

Июль
Доходы: 5
Зарплата: 3
Прибыль: 2

Август
Доходы: 2
Зарплата: 5
Прибыль: -3

Сентябрь
Доходы: 5
Зарплата: 2
Прибыль: 3

Октябрь
Доходы: 7
Зарплата: 4
Прибыль: 3

Ноябрь
Доходы: 3
Зарплата: 3
Прибыль: 0

Декабрь
Доходы: 5
Зарплата: 4
Прибыль: 1

Название:Airomotors

Январь
Доходы: 1
Зарплата: 6
Прибыль: -5

Февраль
Доходы: 2
Зарплата: 1
Прибыль: 1

Март
Доходы: 3
Зарплата: 1
Прибыль: 2

Апрель
Доходы: 4
Зарплата: 2
Прибыль: 2

Май
Доходы: 5
Зарплата: 2
Прибыль: 3

Июнь
Доходы: 6
Зарплата: 3
Прибыль: 3

Июль
Доходы: 6
Зарплата: 4
Прибыль: 2

Август
Доходы: 7
Зарплата: 5
Прибыль: 2

Сентябрь
Доходы: 8
Зарплата: 4
Прибыль: 4

Октябрь
Доходы: 9
Зарплата: 8
Прибыль: 1

Ноябрь
Доходы: 8
Зарплата: 6
Прибыль: 2

Декабрь
Доходы: 12
Зарплата: 6
Прибыль: 6

Название:Jetback

Январь
Доходы: 4
Зарплата: 3
Прибыль: 1

Февраль
Доходы: 5
Зарплата: 2
Прибыль: 3

Март
Доходы: 6
Зарплата: 4
Прибыль: 2

Апрель
Доходы: 7
Зарплата: 6
Прибыль: 1

Май
Доходы: 9
Зарплата: 3
Прибыль: 6

Июнь
Доходы: 13
Зарплата: 5
Прибыль: 8

Июль
Доходы: 15
Зарплата: 3
Прибыль: 12

Август
Доходы: 22
Зарплата: 18
Прибыль: 4

Сентябрь
Доходы: 4
Зарплата: 3
Прибыль: 1

Октябрь
Доходы: 1
Зарплата: 1
Прибыль: 0

Ноябрь
Доходы: -2
Зарплата: 4
Прибыль: -6

Декабрь
Доходы: 6
Зарплата: 5
Прибыль: 1

Нужно считать прибыль для последующей сортировки по убыванию по компаниям
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.07.2022, 14:20
Ответы с готовыми решениями:

Как получить часть строки до определенного места?
Имеется текст: Name\t\tISO/et Form\t\t51X\t61Y \t - это табуляция. Между символами,...

Как считать из файла части строк до определенного символа
Здравствуйте, форумчане. Только началось изучение си и появился вопрос: - как считать из файла...

Как считать 4 строки после определенного символа и записать их в виде переменных
Дан текстовый файл: 3445 jgjghjdfgk fdkdfk fglfgofo fgjfkj3434 3446 gjfgjfdj gflgfpfg

Поиск строки с определенного места
Здравствуйте. Облазил 3 страницы гугла, но так и не нашел. К примеру есть строка:...

Чтение txt-файла с определенного места
Здравствуйте товарищи ! Подскажи как реализовать копирование данных из .txt с определенного места?...

3
6 / 3 / 3
Регистрация: 04.01.2022
Сообщений: 58
19.07.2022, 14:52 2
Лучший ответ Сообщение было отмечено GGmisterio как решение

Решение

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include<iostream>
#include<string>
#include<fstream>
 
using namespace std;
 
int main()
{
    string s = "Nope";
    int Number = 0, Temp = 0;
    int Counter = 0, i = 0;
    int Numbers[3] = {1, 1, 1};
 
    
 
    ifstream fin ("AllMustBurn.txt");
 
    if (!fin.is_open())
 
        cout << "Ошибка!" << endl;
 
    while (!fin.eof() ) 
    {
        fin >> s;
        if (s == "Прибыль:")
        {
            fin >> Temp;
            Number += Temp;
            Temp = 0;
            Counter++;
        }
        if (Counter == 12)
        {
            Counter = 0;
            Numbers[i] = Number;
            i++;
            Number = 0;
        }
    }
 
    for (int k = 0; k <= 2; k++)
        cout << Numbers[k] << " ";
    
    fin.close();
 
    return 0;
}
Осталось найти большее значение массива Numbers и его номер вывести на экран. Но у меня возникли проблемы с локализацией, так что я могу помочь только частично.
0
Вездепух
Эксперт CЭксперт С++
11689 / 6368 / 1723
Регистрация: 18.10.2014
Сообщений: 16,051
19.07.2022, 22:06 3
Цитата Сообщение от GGmisterio Посмотреть сообщение
Как считать строки из файла до определенного места
Цитата Сообщение от GGmisterio Посмотреть сообщение
Нужно считать прибыль для последующей сортировки по убыванию по компаниям
И? Как первое связано со вторым?
0
0 / 0 / 0
Регистрация: 20.06.2022
Сообщений: 3
20.07.2022, 15:44  [ТС] 4
ну второе это задание вообщем, а первое это та проблема с которой я столкнулся на этом этапе.
0
20.07.2022, 15:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.07.2022, 15:44
Помогаю со студенческими работами здесь

Воспроизведение музыкального Wav (WAVE) файла с определенного места
Добрый день. Пытаюсь реализовать воспроизведение wav с определенного места. Все переменные из wav...

Как считать строки из файла, если там больше одной строки?
Как считать строки из файла в массив. Если в файле одна строка, то нет проблем, но если несколько,...

Запуск cmd файла с определенного места в его коде из другого cmd файла
Здравствуйте. Требуется команда для запуска батника с метки внутри него, а не с первой команды в...

Считать из файла до определенного символа
Как считать из файла строку до определенного символа, например до второй кавычки: &quot;Stroka s 12&quot; ...

Как считать строки с файла?
Нужно считать например 20 строк с файла, а в файле содержится 30 строк. Как это сделать? Помогите...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru