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

Чтение из файла последовательности отрицательных чисел и букв - C++

Восстановить пароль Регистрация
 
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
05.02.2013, 22:25     Чтение из файла последовательности отрицательных чисел и букв #1
Здравствуйте, помогите пожалуйста считать из файла, содержимое которого,

A B -0,47 C
A C -1,86 C
C A -2,44 B
B D -1,45 D
C C -1,85 C
B D -0,24 D
A D -1,28 C
B B -2,21 B
B D 1,34 E

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
class slog {
struct row {
        char *x;
    double xl, xr;
    char y;
} *Rows;
 
public:
    slog(char *filename int ikol); 
};
 
 
slog::slog(char *filename, int ikol)) {
    FILE *f;
    
    if (!(f = fopen(filename, "rt"))) return;
 
    
    Rows = new row[];
 
    for (int i = 0; i < n; i++) 
{
 
    }
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2013, 22:25     Чтение из файла последовательности отрицательных чисел и букв
Посмотрите здесь:

Найти величину наибольшего среди отрицательных чисел последовательности C++
C++ Чтение из файла только букв и знаков препинания
Определить произведения положительных и отрицательных чисел последовательности C++
C++ Среднее арифметическое последовательности отрицательных дробных чисел
Вывести сумму первых в последовательности отрицательных чисел, введённых подряд C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Пёс
 Аватар для Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
05.02.2013, 22:34     Чтение из файла последовательности отрицательных чисел и букв #2
C++
1
for (int i = 0; i < n; i++)
что такое n? не обяъвлена нигде....
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
05.02.2013, 23:02  [ТС]     Чтение из файла последовательности отрицательных чисел и букв #3
Цитата Сообщение от Пёс Посмотреть сообщение
C++
1
for (int i = 0; i < n; i++)
что такое n? не обяъвлена нигде....
Ну вот я и не знаю как написать этот цикл чтобы записать значения из файла(
Пёс
 Аватар для Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
06.02.2013, 00:34     Чтение из файла последовательности отрицательных чисел и букв #4
Как то так....

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
#include <fstream>
#include <iostream>
using namespace std;
 
class slog 
{
    struct row 
    {
        char x1, x2;
        double x3;
        char x4;
    }*rows;
    int count;              //количество элементов rows
 
public:
    slog(const char *filename); 
};
 
 
slog::slog(const char *filename) 
{
    ifstream F(filename);
    int countString = 0;
    if(!F.is_open())    //если файл не открылся, выйти из программы
        exit(0);
 
    F.get();            //читаем 1й символ
 
    while(!F.eof())     //пока что не конец файла
    {
        countString++;  //считаем количество строк
        F.get();
    }
 
    count = countString;
 
    F.seekg(0, ios::beg); //возвращаемся в начало файла
    rows = new row[countString];
 
    for(int i = 0; i < countString; ++i)
        F >> rows[i].x1 >> rows[i].x2 >> rows[i].x3 >> rows[i].x4;
 
 
}
 
void main()
{
 
}
Вообще, удобнее было бы использовать vector. Тогда бы не пришлось дважды проходить по файлу.
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
07.02.2013, 19:59  [ТС]     Чтение из файла последовательности отрицательных чисел и букв #5
Цитата Сообщение от Пёс Посмотреть сообщение
Как то так....

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
#include <fstream>
#include <iostream>
using namespace std;
 
class slog 
{
    struct row 
    {
        char x1, x2;
        double x3;
        char x4;
    }*rows;
    int count;              //количество элементов rows
 
public:
    slog(const char *filename); 
};
 
 
slog::slog(const char *filename) 
{
    ifstream F(filename);
    int countString = 0;
    if(!F.is_open())    //если файл не открылся, выйти из программы
        exit(0);
 
    F.get();            //читаем 1й символ
 
    while(!F.eof())     //пока что не конец файла
    {
        countString++;  //считаем количество строк
        F.get();
    }
 
    count = countString;
 
    F.seekg(0, ios::beg); //возвращаемся в начало файла
    rows = new row[countString];
 
    for(int i = 0; i < countString; ++i)
        F >> rows[i].x1 >> rows[i].x2 >> rows[i].x3 >> rows[i].x4;
 
 
}
 
void main()
{
 
}
Вообще, удобнее было бы использовать vector. Тогда бы не пришлось дважды проходить по файлу.
Спасибо большое, мжет и через вектор попробую)
Yandex
Объявления
07.02.2013, 19:59     Чтение из файла последовательности отрицательных чисел и букв
Ответ Создать тему
Опции темы

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