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

Считывание строки из файла. И дальнейшая работа со следующей по счету строкой - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Соседями элемента A ij в матрице назовем элементы А kl, где http://www.cyberforum.ru/cpp-beginners/thread1308091.html
Соседями элемента A ij в матрице назовем элементы А kl, где i-l<k<i+l , j-1<l<j+1 , (k, l). Операция сглаживания матрицы дает новую матрицу того же размера, каждый элемент которой получается как среднее арифметическое имеющихся соседей соответствующего элемента исходной матрицы. Построить результат сглаживания заданной вещественной матрицы размером 10 х 10. В сглаженной матрице...
C++ Логическое выражение Записать логическое выражение, которое является истинным, когда число N чётное делится на 7, но не делится на 11 и 13 без остатка. Правильно но ли я понял условие? Пишу в С++ Builder, формы. bool p=false; int n=StrToInt(Edit1->Text); if (n%2==0 && n%7==0 && n%13!=0 && n%11!=0) p=true; if (p) ShowMessage("Истина"); else ShowMessage("Ложь"); http://www.cyberforum.ru/cpp-beginners/thread1308089.html
C++ Обход треугольника по часовой стрелке
Всем доброго дня, а кому-то вечера, итак суть задачи: есть координаты вершин треугольника и нужно их вывести в порядке обхода треугольника по часовой стрелке. Проверьте пожалуйста задачу: #include "stdafx.h" #include <conio.h> int _tmain(int argc, _TCHAR* argv) { int x1=2, y1=7; //A
C++ Соседями элемента A ij в матрице назовем элементы А kl, где
i-l<k<i+l,j-1<l<j+1, (k, l). Операция сглаживания матрицы дает новую матрицу того же размера, каждый элемент которой получается как среднее арифметическое имеющихся соседей соответствующего элемента исходной матрицы. Построить результат сглаживания заданной вещественной матрицы размером 10 х 10. В сглаженной матрице найти сумму модулей элементов, расположенных ниже главной диагонали.
C++ В одномерном массиве найти максимум, сумму, переставить элементы согласно условию http://www.cyberforum.ru/cpp-beginners/thread1308066.html
1)максимальный по модулю элемент массива 2)сумму элементов массива, расположенных между первым и вторым положительными элементами. Преобразовать массив таким образом, чтобы элементы, равные нулю, располагались после всех остальных.
C++ Чтение из csv файла в двумерный массив географических координат с нестандартными символами Добрый вечер! После Hello Word это моя первая прога на с++, поэтому очень прошу помочь. Задача состоит в следующем Есть csv файл, такого типа: CID;LAC;GPS 10127;8050;49°11'23.10"N,16°32'13.38"E 10128;8050;49°11'23.10"N,16°32'13.38"E 10129;8050;49°11'23.10"N,16°32'13.38"E подробнее

Показать сообщение отдельно
dand1
0 / 0 / 0
Регистрация: 20.10.2014
Сообщений: 14
23.11.2014, 00:33     Считывание строки из файла. И дальнейшая работа со следующей по счету строкой
Название может криво написал, лучше опишу задание.

Написать программу, которая в качестве аргумента командной строки принимает имя текстового файла, содержащего элементы трёх видов:
+ <слово>
- <слово>
? <слово>
Элементы отделяются друг от друга одним или несколькими разделителями – пробелами, табуляциями, символами новой строки. Слово с предшествующим плюсом добавляется в упорядоченный динамический список, если его там ещё нет (в качестве функции сравнения слов использовать лексикографическое сравнение). Если числу предшествует минус, то это слово удаляется из списка (если оно было в нём). Если перед словом стоит вопрос, то оно печатается в выходной поток в отдельной строке вместе со словом Yes или No в зависимости от того, присутствует ли это слово в построенном на тот момент списке.

В общем, что мне удалось сделать.

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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#include <fstream>
#include <cstdlib>
#include <iostream>
#include <string>
#include <stdio.h>
 
class Node
{
 
public:
    char* data;
    Node *next;
 
    Node()
    {
        char* data = new char[30];
    }
 
    Node(char* element)
    {
        strcpy_s(data, 20, element);
        next = NULL;
    }
 
    char *getdata()
    {
        return data;
    }
};
 
class DynList
{
    Node *head;
public:
 
    DynList()
    {
        head = NULL;
    }
 
    ~DynList()
    {
        Node *temp;
        while (head != NULL)
        {
            head = head->next;
            delete temp;
            temp = head;
        }
    }
 
    void AddFirst(DynList &l, char* element);
    Node* Search(DynList &l, char* element);
    void Delete(DynList &l, Node *temp);
};
 
void DynList::AddFirst(DynList &l, char* element)
{
 
    Node *NewNode = new Node;
    NewNode->data = element;
    NewNode->next = NULL;
 
    NewNode->next = l.head;
    l.head = NewNode;
}
 
Node* DynList::Search(DynList &l, char* element)
{
    while (head != NULL)
    {
        if (head->data = element)
            return l.head;
        l.head = l.head->next;
    }
    return l.head;
}
 
void DynList::Delete(DynList &l, Node *temp)
{
    if (temp == l.head)
    {
        l.head = temp->next;
    }
 
    //рабоча¤ переменна¤-узел дл¤ движени¤ по списку
    Node *r = new Node;
    r = head;
    while (r->next != temp)
    {
        r = r->next;
    }
    r->next = temp->next;
    delete(temp);
}
 
 
int main()
{
    char* element = new char[30];
    DynList vars;
    std::ifstream file("3.txt");
 
    if (file.is_open() )
    {
        while (!file.eof() )
        {
            getline(file, element);
        }
 
    }
 
 
 
    return 0;
}
Во первых компилятор (работаю в VS) ругается на getline. Можете помочь?
C++
1
2
3
4
5
6
Error   1   error C2784: 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &,std::basic_string<_Elem,_Traits,_Alloc> &)' : could not deduce template argument for 'std::basic_istream<_Elem,_Traits> &' from 'std::ifstream'   
Error   2   error C2784: 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &,std::basic_string<_Elem,_Traits,_Alloc> &)' : could not deduce template argument for 'std::basic_string<_Elem,_Traits,_Alloc> &' from 'char *'
Error   3   error C2780: 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &,std::basic_string<_Elem,_Traits,_Alloc> &,const _Elem)' : expects 3 arguments - 2 provided    
Error   4   error C2784: 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &&,std::basic_string<_Elem,_Traits,_Alloc> &)' : could not deduce template argument for 'std::basic_istream<_Elem,_Traits> &&' from 'std::ifstream' 
Error   5   error C2784: 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &&,std::basic_string<_Elem,_Traits,_Alloc> &)' : could not deduce template argument for 'std::basic_string<_Elem,_Traits,_Alloc> &' from 'char *'
Error   6   error C2780: 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &&,std::basic_string<_Elem,_Traits,_Alloc> &,const _Elem)' : expects 3 arguments - 2 provided
Текстовые данные у меня хранятся в таком виде:
C++
1
+ The + donation + will + go + toward + the ? CDC - Global + Disaster + Response + Fund + and + is + expected + to + help + finance + training - and + equipment ? in + various + ebola + care + centers. + It + important - to - note + that - the + gift - by + Mark ? Zuckerberg ? and - Dr. ? Dre
Я хочу применить такой алгоритм.
1. Считываю слова из файла
2. Далее прописываю условия, что если считывается один из символов-флагов ("+", "-", "?"), то к следующему слову применяется соответствующая функция-метод класса.
Так вот, как мне обратиться к следующему после флагу слову?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru