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

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

Войти
Регистрация
Восстановить пароль
 
solodovshikova
0 / 0 / 0
Регистрация: 10.12.2013
Сообщений: 3
#1

Функции для подсчёта количества слов в списке - C++

10.12.2013, 21:18. Просмотров 338. Ответов 2
Метки нет (Все метки)

Помогите в решении задачи по С++
нужно написать функции для подсчёта количества слов в списке:
а) начинающихся и оканчивающихся одной и той же буквой.
б)начинающихся с той же буквы. что и следующие слово.

очень очень нужна помощь((((
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2013, 21:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функции для подсчёта количества слов в списке (C++):

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

Программа подсчёта количества символов, букв, слов и предожений - C++
Нужно написать программу 1) Имя передаётся через командную строку 2) Программа должна подсчитывать количество: 1) символов; 2) символов...

Цикл для подсчёта количества максимальных чисел - C++
Дано 20 действительных чисел. Определить сколько из них принимают максимальное значение. ...

Составить программу для подсчёта количества чётных и нечётных чисел - C++
В массиве M(20) целых чисел подсчитать количество чётных и нечётных чисел.

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

Описать рекурсивную функцию для подсчёта количества запятых в данном тексте - C++
Помогите, пожалуйста. Есть идеи, но до реализации не доходит. Нужно описать рекурсивную функцию для подсчёта количества запятых в ...

2
ТОрчОК
Заблокирован
10.12.2013, 23:06 #2
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
#include <iostream>
#include <list>
#include <string>
#include <algorithm>
#include <iterator>
void WordsCountWithSameLetter(std::list<std::string> &wordslist)
{
    int count[26] = {0};
    for(std::list<std::string>::iterator iter = wordslist.begin(); iter != wordslist.end(); ++iter)
        count[iter->data()[0] - 'a']++;
    for(int i = 0; i < 26; i++)
        std::cout << char('a' + i) << ' ';
    std::cout <<std::endl;
    std::copy(count, count + 26, std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
}
 
int SameCurrentAndNext(std::list<std::string> &wordslist)
{
    int count = 0;
    char symbol = 0;
    for(std::list<std::string>::iterator iter = wordslist.begin(); iter != wordslist.end(); ++iter)
    {
        if(symbol)
            if(symbol == iter->data()[0])
                count++;
        symbol = iter->data()[0];
    }
    return count;
}
int main()
{
    std::string str = "counter strike is the best game then it is counter strike";
    std::list<std::string> sentence;
    std::string word;
    std::string::iterator iter = str.begin();
 
    while(iter != str.end())
    {
        word.push_back(*iter++);
        if(!word.empty() && iter != str.end() && *iter == ' ')
        {
            while(*iter == ' ')
                iter++;
            sentence.push_back(word);
            word.clear();
 
        }
    }
    WordsCountWithSameLetter(sentence);
    std::cout << SameCurrentAndNext(sentence);
    std::cout << std::endl;
 
    system("pause");
    return 0;
}
Добавлено через 6 минут
C++
1
2
3
4
5
6
7
8
9
10
int firstAndlastIsSame(std::list<std::string> &wordslist)
{
    int count = 0;
    for(std::list<std::string>::iterator iter = wordslist.begin(); iter != wordslist.end(); ++iter)
    {
        if(iter->data()[0] == iter->data()[iter->length() - 1])
            count++;
    }
    return count;
}
неправильно прочитал задание, первая функция ненужна тебе вовсе вместо нее добавь вот это вот и будет выполняться первый пункт
1
solodovshikova
0 / 0 / 0
Регистрация: 10.12.2013
Сообщений: 3
10.12.2013, 23:56  [ТС] #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
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
#include <iostream>
#include <list>
#include <string>
#include <algorithm>
#include <iterator>
int firstAndlastIsSame(std::list<std::string> &wordslist)
{
    int count = 0;
    for(std::list<std::string>::iterator iter = wordslist.begin(); iter != wordslist.end(); ++iter)
    {
        if(iter->data()[0] == iter->data()[iter->length() - 1])
            count++;
    }
    return count;
}
 
int SameCurrentAndNext(std::list<std::string> &wordslist)
{
    int count = 0;
    char symbol = 0;
    for(std::list<std::string>::iterator iter = wordslist.begin(); iter != wordslist.end(); ++iter)
    {
        if(symbol)
            if(symbol == iter->data()[0])
                count++;
        symbol = iter->data()[0];
    }
    return count;
}
int main()
{
    std::string str = "counter strike is the best game then it is counter strike";
    std::list<std::string> sentence;
    std::string word;
    std::string::iterator iter = str.begin();
 
    while(iter != str.end())
    {
        word.push_back(*iter++);
        if(!word.empty() && iter != str.end() && *iter == ' ')
        {
            while(*iter == ' ')
                iter++;
            sentence.push_back(word);
            word.clear();
 
        }
    }
   
    std::cout << SameCurrentAndNext(sentence);
    std::cout << std::endl;
 
    system("pause");
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.12.2013, 23:56
Привет! Вот еще темы с ответами:

Написать программу подсчёта количества пробелов в заданной строке - C++
как сделать проверку строки на пробелы?

Задача сформировать массив строк и реализовать функции определения количества слов - C++
Здравствуйте, помогите сделать задачи: 1. Сформировать массив строк. Удалить из него строки, начинающиеся на букву &quot;а&quot;. 2....

Исправить программу подсчёта слов в файле - C++
Здравствуйте, прошу помощи в одном вопросе... Я сделал программу которая считает количество слов в определённом файле, и все работает...

Функция для кодсчета количества слов - C++
#include &lt;stdio.h&gt; #include &lt;string.h&gt; #include &lt;conio.h&gt; int vivod() { printf(&quot;Vvedide predlojenie\n&quot;); ...


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

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

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