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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
Traveller710
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 48
#1

Вывести все слова из предложения, которые содержат данную(определенную) букву - C++

21.02.2011, 14:20. Просмотров 1242. Ответов 2
Метки нет (Все метки)

Дано предложение. Вывести все слова из этого предложения, которые содержат данную(определенную) букву.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2011, 14:20     Вывести все слова из предложения, которые содержат данную(определенную) букву
Посмотрите здесь:
Вывести все слова сообщения, которые содержат данную букву C++
Вывести слова, которые не содержат букву а C++
Вывести слова которые не содержат букву а C++
C++ Вывести слова, которые содержат заданную букву (исправить код)
C++ Удалить все слова, которые содержат хотя бы одну латинскую букву
:Вывести все слова предложения, содержащие последнюю букву предыдущего слова не менее 2 раз C++
Определить, каких символов больше: цифр или латинских букв и Вывести слова, которые не содержат букву а C++
Вывести все слова, которые начинаются и заканчиваются на одну букву C++
C++ Вывести из файла все слова, которые начинаются на гласную букву
Вывести из файла все слова, которые начинаются на заданную букву C++
C++ Вывести все слова, которые имеют четную длину и содержат в качестве подстроки последнее слово
C++ Найти слова которые содержат введеную букву

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
21.02.2011, 15: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
#include <iostream>
#include <stdio.h>
#include <string>
//using namespace std;
int main()
{
char toFind;
std::string::size_type beg_idx = 0, end_idx = 0;
std::string parse_string = "hello world, lol! wow haha, hice blowjob" , word, wordToPrint;
const std::string delim_string (" .,!?");
    
std::cout << "Enter char to find." << std::endl;
std::cin >> toFind;
while ( std::string::npos != (beg_idx = parse_string.find_first_not_of( delim_string, end_idx )) )
{
if ( std::string::npos == (end_idx = parse_string.find_first_of( delim_string, beg_idx )) )
{
    word = parse_string.substr ( beg_idx );
    if (word != wordToPrint)
    {
        wordToPrint = word;
        for (int i = 0; i < word.length(); ++i)
        {
            if (word[i] == toFind)
            {
            std::cout << wordToPrint << std::endl;
            break;
            }
        }
    }               
}
else
{
    word = parse_string.substr ( beg_idx, end_idx - beg_idx );
    if (word != wordToPrint)
    {
        wordToPrint = word;
        for (int i = 0; i < word.length(); ++i)
        {
            if (word[i] == toFind)
            {
            std::cout << wordToPrint << std::endl;
            break;
            }
        }
    }               
}
}
system("pause");
return 0;
}
Как то так можно
asics
Freelance
Эксперт С++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
21.02.2011, 16:37     Вывести все слова из предложения, которые содержат данную(определенную) букву #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
#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
 
int main (){
  std::string str, tail;
  const std::string DELIMS(" ,.?;:!");
  char letter;
 
  std::cout << "\n\nInput string -> ";
  getline(std::cin , str);
  std::cout << "\n\nInput letter -> ";
  std::cin >> letter;
 
  int i = 0;
  std::for_each(str.begin(), str.end(), [&i, &str, &DELIMS](char a_){
    ( DELIMS.find(a_) != std::string::npos )? str[i] = ' ' : 0;
    ++i;
  });
 
  std::istringstream ist(str);
  while(ist >> tail){
    if(tail.find(letter) != std::string::npos)
      std::cout << tail << ' ';
  }
 
  return 0;
}
Ответ Создать тему
Опции темы

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