Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
hotte
6 / 6 / 2
Регистрация: 31.01.2014
Сообщений: 44
#1

Напишите программу для подсчета числа вхождений заданного слова из файла - C++

05.02.2014, 16:57. Просмотров 509. Ответов 3
Метки нет (Все метки)

"Напишите программу для подсчета числа вхождений заданного слова из файла". (упражнение из Эккеля)

в общем, суть понял, но результат непонятный

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
using namespace std;
 
int main() 
{
    ifstream in("main.cpp");
    string w;
    w == "int";
    int w_count = 0;
    while(in >> w)
       w_count++;
    cout << "Kolichestvo slov " << w << " ravno " << w_count << endl;     
}
в терминал выводится такое сообщение
Kolichestvo slov } ravno 45
откуда там фигурная скобка, вообще непонятно. да и считает он количество всех слов.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2014, 16:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Напишите программу для подсчета числа вхождений заданного слова из файла (C++):

Написать программу для подсчета числа строк файла - C++
нужно решить задачу по программирования: Вот задание Пусть текстовый файл разбит на непустые строки. Написать программу для подсчета...

Считать текст из файла, добавить в конце каждого предложения, количество вхождений в него заданного слова - C++
Вот задание: Написать программу, которая считывает текст из файла и выводит его на экран, добавляя после каждого предложения, сколько раз...

Для заданного слова определить среднее арифметическое его вхождений в предложения документа - C++
Прошу помощи у гуру программирования, задачу сам начал, но боюсь по срокам не успеть: Написать программу, которая в качестве аргументов...

Напишите программу которая использует функцию для подсчета букв. - C++
Ку, всем. Можете помочь и наглядно обеснить. Напишите программу которая использует функцию для подсчета букв. Использовать string as...

Напишите программу подсчета суммарного числа букв 'а' и букв 'b' в данной строковой переменной - C++
Напишите программу подсчета суммарного числа букв 'а' и букв 'b' в данной строковой переменной. Вывести на экран каких букв больше. ...

Напишите программу, в которой использовалась бы функция, возвращающая процент от заданного числа - C++
Напишите программу, в которой использовалась бы функция, возвращающая процент от заданного числа. В качестве аргументов функции передаются...

3
hotte
6 / 6 / 2
Регистрация: 31.01.2014
Сообщений: 44
05.02.2014, 17:05  [ТС] #2
в примечании там написано "для поиска слова воспользуйтесь оператором == класса string"
не совсем понятно, где и как его использовать)
0
Jazz411
85 / 33 / 3
Регистрация: 12.03.2011
Сообщений: 234
Записей в блоге: 2
08.02.2014, 04:16 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Просто поправил ваш пример, попытайтесь понять где вы сделали "каку"

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
#include <iostream>
#include <fstream>
#include <string>
 
int main() 
{
    std::ifstream in( "main.cpp" );
    std::string findWord( "int" );
    std::string tmp;
    
    int findCount = 0;
    
    while(in >> tmp)
    {
        if ( tmp == findWord )
            ++findCount;
    }
 
    std::cout << "Kolichestvo slov " << findWord << " ravno " << findCount << std::endl;     
 
    in.close();
 
    return 0;
}
Добавлено через 3 минуты
Цитата Сообщение от hotte Посмотреть сообщение
откуда там фигурная скобка
переменная w хранит последнее слово которое было ей присвоено, а именно "}"
1
hotte
6 / 6 / 2
Регистрация: 31.01.2014
Сообщений: 44
11.02.2014, 21:10  [ТС] #4
а.. понял..
C++
1
    while(in >> w)
считывает поочередно слова и присваивает "w" значение каждого слова, а последним словом оказывается "}"

спасибо =)
0
11.02.2014, 21:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.02.2014, 21:10
Привет! Вот еще темы с ответами:

Напишите программу, определяющую первое вхождение заданного целого числа х в массив целых чисел. - C++
9. Напишите программу, которая вводит с клавиатуры непустой массив целых чисел, циклический сдвигает элементы массива вправо на к позиции,...

Напишите программу, определяющую первое вхождение заданного целого числа х в массив целых чисел. - C++
1. Напишите программу, которая вводит с клавиатуры непустой массив целых чисел, заменяет все элементы массива, кроме крайних на полусумму...

Напишите программу, считающую сумму старшего и младшего разряда заданного с клавиатуры целого числа. - C++
Напишите программу, считающую сумму старшего и младшего разряда заданного с клавиатуры целого числа.

Напишите программу для нахождения суммы / произведения заданного ряда - C++
y=(1/a+1/2*a+1/3*a+...+1/n*a) #include&lt;iostream&gt; #include&lt;cmath&gt; #include &lt;conio.h&gt; #include &lt;stdlib.h&gt; using namespace std; ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.