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

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

Войти
Регистрация
Восстановить пароль
 
triadec_96
12 / 12 / 1
Регистрация: 27.12.2012
Сообщений: 448
Завершенные тесты: 1
#1

:Вывести все слова предложения, содержащие последнюю букву предыдущего слова не менее 2 раз - C++

28.05.2013, 20:26. Просмотров 542. Ответов 2
Метки нет (Все метки)

Делаю задание:Вывести все слова предложения, содержащие последнюю букву предыдущего слова не менее 2 раз.
Начал с пере формировки начальной строки в строку,где только 1 пробел между словами.
В чём моя ошибка?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <conio.h>
#include <string>
using namespace std;
int main()
{
    string str,str2,s1[255];
     int i,j;
 cin>>str;
  for (i=1;i<=strlen(str);i++)
      if((str[i]==" ")&&(str[i+1]==" "))
          then i++;
      else
       str2[i]=str[i];
 cout<<endl<<str2;
 
 getch();
 return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2013, 20:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос :Вывести все слова предложения, содержащие последнюю букву предыдущего слова не менее 2 раз (C++):

Найти слова, начинающиеся и оканчивающиеся на одну и ту же букву; слова, содержащие букву, встречающуюся N раз - C++
Пусть задано множество строк. Вывести: а) слова, начинающиеся и оканчивающиеся на одну и ту же букву б) слова, которые содержат букву,...

Напечатать все слова отличные от последнего слова, предварительно перенести последнюю букву в начало слова - C++
Дано текст, содержащий от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв, между соседними словами - не менее одного пробела....

Вывести на экран все слова предложения, содержащие в качестве подстроки слово w - C++
В строках вообще чёт понять не могу(( пожалуйста объясните хотя алгоритм как делать по подробнее!(( вот задание: С клавиатуры вводится...

Дано два предложения (Распечатать слова из первого предложения, который начинаются на первую букву последнего слова второго предложения) - C++
Дано два предложения. Распечатать: - слова из первого предложения, который начинаются на первую букву последнего слова второго...

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

Напечатать слова, которые отличны от последнего слова текста, предварительно удалив из слова последнюю букву - C++
Дана последовательность содержащая от 1 до 30 слов, в каждом из которых от 1 до 5 строчных латинских букв; между соседними словами не менее...

2
Issues
430 / 365 / 37
Регистрация: 06.08.2012
Сообщений: 961
28.05.2013, 20:57 #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
#include <algorithm>
#include <iostream>
#include <string>
#include <sstream>
 
int main()
{
    std::string str = "Hello World dude yeea";
    std::string s_cur, s_prev;
 
    std::stringstream ss(str);
 
    std::cout << str << std::endl << std::endl;
 
    for (; ss >> s_cur; s_prev = s_cur)
    {
        if (s_prev.size() != 0x0) {
            if (std::count(s_cur.begin(), s_cur.end(), s_prev.back()) >= 2)
                std::cout << s_cur << ' ';
        }
    }
 
    std::cout << std::endl;
 
    system("PAUSE");
    return 0;
}
0
triadec_96
12 / 12 / 1
Регистрация: 27.12.2012
Сообщений: 448
Завершенные тесты: 1
29.05.2013, 00:42  [ТС] #3
Цитата Сообщение от SeregaC++ Посмотреть сообщение
Код C++
#include <algorithm>
#include <iostream>
#include <string>
#include <sstream>
int main()
{
* * std::string str = "Hello World dude yeea";
* * std::string s_cur, s_prev;
std::stringstream ss(str);
std::cout << str << std::endl << std::endl;
for (; ss >> s_cur; s_prev = s_cur)
* * {
* * * * if (s_prev.size() != 0x0) {
* * * * * * if (std::count(s_cur.begin(), s_cur.end(), s_prev.back()) >= 2)
* * * * * * * * std::cout << s_cur << ' ';
* * * * }
* * }
std::cout << std::endl;
system("PAUSE");
* * return 0;
}
У меня вопрос по моему коду:
Как можно заменить "(str[i]==" ")"?

Добавлено через 33 минуты
Цитата Сообщение от SeregaC++ Посмотреть сообщение
std::string str = "Hello World dude yeea";
* * std::string s_cur, s_prev;
std::stringstream ss(str);
std::cout << str << std::endl << std::endl;
Не проще было написать в начале "using namespace std" или в этом есть какие-то плюсы?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.05.2013, 00:42
Привет! Вот еще темы с ответами:

Вывести на экран все слова, содержащие букву "k" - C++
дана строка. вывести на экран все слова, содержащие букву k. заранее большое спасибо.

Напечатать все слова, отличные от последнего слова строки, удалив из каждого слова первую и последнюю буквы - C++
Близиться сессия,а завтра мне сдавать 2 проги. Помогите ребят,могу даже 100 скинуть,если уж так трудно помочь. 8.Задан...

Удалить все слова, содержащие указанную пользователем букву - C++
Собственно задание указано в теме. Как я понимаю, мне надо разбить предложение на слова, а потом удалить те, которые содержат эту букву. ...

Удалить все слова, содержащие указанную пользователем букву - C++
Собственно задание указано в теме. Как я понимаю, мне надо разбить предложение на слова, а потом удалить те, которые содержат эту букву. У...


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

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

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