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

Считывание текста из файла и вывод на экран только предложения содержащие введенное с клавиатуры слово - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Дана символьная прямоугольная матрица NхM. Найти номер столбца, содержащего больше всего цифр. http://www.cyberforum.ru/cpp-beginners/thread558565.html
Дана символьная прямоугольная матрица NхM. Найти номер столбца, содержащего больше всего цифр.
C++ помогите с задачей про шахматы! не сложная...но сделать не могу.. помогите с задачей про шахматы! не сложная...но сделать не могу.. нужна программа на классах Клас доска (board) - Print(); - set_Queen_Amount(); - put_Queen(); - edit_cell(); - check_Board(); http://www.cyberforum.ru/cpp-beginners/thread558549.html
Не увеличивается значение внутри цикла C++
Простая программа. Выводить должна значения функции y= x^2 на промежутке c шагом 0.4 на выходе имею следующее: F(4) = 16 F(4) = 16 F(4) = 16 F(4) = 16 F(4) = 16 F(4) = 16
C++ Комбинированая сортировка
Скажите кто-нибудь, что это за сортировка, какой бывает, какие методы объединяет. Гугл ничего внятного не дает, кроме сортировок introsort и timsort, код которых слишком сложен(для первокурсника). Может это другое название какого-нибудь простого метода? Хотелось бы исходник с примером:(
C++ Множественное наследование: прямоугольник, квадрат, ромб, параллелограмм http://www.cyberforum.ru/cpp-beginners/thread558486.html
Помогите, пожалуйста, разработать иерархию. В дальнейшем надо реализовать несколько методов, среди которых изменение размера и вычисление площади. Пока остановился на двух вариантах. 1) Квадрату достаточно одного свойства, длинна стороны. От него наследуется прямоугольник(добавляется свойство ширина) и ромб(добавляется свойство высота к одной из диагоналей). От ромба и прямоугольника...
C++ Освоение создания параллельных программ и функций обмена данными между процессами Помогите пожалуйста написать программу...Буду очень признателен В каждом подчиненном процессе дано целое число, причем только для одного процесса это число отлично от нуля. Переслать ненулевое число в главный процесс и вывести в главном процессе полученное число и ранг процесса, переславшего это число. Для приема сообщения в главном процессе использовать функцию MPI_Recv с параметром... подробнее

Показать сообщение отдельно
extenup
53 / 53 / 3
Регистрация: 12.11.2011
Сообщений: 109
25.04.2012, 22:16     Считывание текста из файла и вывод на экран только предложения содержащие введенное с клавиатуры слово
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
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
 
int main()
{
    string text = ""; // текст записанный из файла
    string search;    // искомое слово
    string result;    // результат поиска
    string filename = "file.txt"; // имя файла
 
    // файл в котором будет осуществляться поиск
    ifstream *in = new ifstream(filename);
    if(in->fail())
    {
        cout << "file '" << filename << "' not found" << endl << endl;
        system("pause");
        return 1;
    }
 
    // пользователь вводит искомое слово
    cout << "enter search  word in proposal: ";
    cin  >> search;
 
    // записываю содержимое файла
    if(in->is_open())
    {
        while(!in->eof())
            text += in->get();
 
        in->close();
    }
    delete in;
    
    // позиция с кот осущ поиск
    int find_pos = text.find(search);
    // если слова не существует - сообщаю об этом
    if(find_pos == -1)
    {
        cout << "entered word is not found!!!" << endl << endl;
        system("pause");
        return 1;
    }
 
    // ищу начало строки
    for(int i = find_pos; ; i--)
    {
        if( text[i] != '!' && text[i] != '.' && 
            text[i] != '?' && i != 0) 
            find_pos--;
        else 
        { 
            find_pos = i;
            if(find_pos > 0) find_pos++;
            break; 
        }
    }
    // записываю строку
    for(int i = find_pos; ; i++)
    {
        if( text[i] != '!' && text[i] != '.' && text[i] != '?' &&
            (int)text[i] != -1)
        {
            if(i == find_pos && text[i] == ' ') continue;
            result += text[i];
        }
        else break;
    }
 
    // вывожу результат
    cout << result << endl << endl;
 
    system("pause");
    return 0;
}
 
Текущее время: 02:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru