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

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

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

Вывести на экран предпоследнее и последнее слово (слова разделены пробелами) - C++

12.03.2014, 00:57. Просмотров 739. Ответов 6
Метки нет (Все метки)

помогите пожалуйста сделать задачу

Вводится строка произвольного текста. Вывести на экран предпоследнее и последнее слово (слова разделены пробелами).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.03.2014, 00:57     Вывести на экран предпоследнее и последнее слово (слова разделены пробелами)
Посмотрите здесь:

C++ Дана строка текста, в которой слова разделены пробелами.
Вывести на экран последнее слово строки C++
Удалить из строки предпоследнее и последнее слово в с++ C++
C++ Строка, слова в которой разделены пробелами
Поменять местами первые слова (слова разделены пробелами) заданных строк, без использования процедур C++
Дана строка, слова в которой разделены пробелами. Оставьте в ней только те слова, которые начинаются на ту же букву, что и первое слово. C++
C++ Ввести строку длинной не более 200 символов, вывести на экран последнее слово
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Retyrn0
45 / 45 / 3
Регистрация: 24.06.2013
Сообщений: 675
Завершенные тесты: 1
12.03.2014, 02:52     Вывести на экран предпоследнее и последнее слово (слова разделены пробелами) #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
char text[1000];
 
cin>>text;
 
int i;
for(i=0;text[i]!=NULL;i++){}
 
int word_count=0;
for(i;word_count<2;i--)
{
  if(i==-1)
  {
    cout<<"В строке меньше 2-х слов!"<<endl;
    break;
  }
  if(text[i]==' ')word_count++;
}
 
if(i!=-1)cout<<&text[i+1];
frax007
0 / 0 / 0
Регистрация: 12.03.2014
Сообщений: 13
14.03.2014, 02:39  [ТС]     Вывести на экран предпоследнее и последнее слово (слова разделены пробелами) #3
а как сделать чтобы компилировалось??? )
Retyrn0
45 / 45 / 3
Регистрация: 24.06.2013
Сообщений: 675
Завершенные тесты: 1
14.03.2014, 03:11     Вывести на экран предпоследнее и последнее слово (слова разделены пробелами) #4
Цитата Сообщение от frax007 Посмотреть сообщение
а как сделать чтобы компилировалось?
Вопрос не понятен. Чтобы компилировалось - это какие кнопки нажать нужно, какие библиотеки подключить, куда вышеуказанный текст скопировать? Может проект сразу самому создать и скинуть?)
frax007
0 / 0 / 0
Регистрация: 12.03.2014
Сообщений: 13
14.03.2014, 09:32  [ТС]     Вывести на экран предпоследнее и последнее слово (слова разделены пробелами) #5
какие библиотеки подключить?
я с++ впервые увидел неделю назад так что не шарю вообще) с кнопками то разобрался нужен полный текст программы чтобы его засунуть, скомпилировать и запустить)
easybudda
Эксперт С++
9412 / 5435 / 917
Регистрация: 25.07.2009
Сообщений: 10,428
14.03.2014, 09:51     Вывести на экран предпоследнее и последнее слово (слова разделены пробелами) #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Выпендрёж с STL
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <sstream>
#include <string>
#include <algorithm>
#include <iterator>
#include <vector>
#include <functional>
 
int main() {
    std::string str;
    
    while ( std::cout << "String: " && std::getline(std::cin, str) && ! str.empty() ) {
        std::vector<std::string> words;
        std::istringstream ist(str);
        std::copy(std::istream_iterator<std::string>(ist), std::istream_iterator<std::string>(), std::back_inserter(words));
        if ( words.size() < 2 )
            std::cout << "Need at most two words!" << std::endl;
        else
            std::cout << "Last two words: " << words[words.size() - 2] << " " << words[words.size() - 1] << std::endl;
    }
    
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.03.2014, 00:39     Вывести на экран предпоследнее и последнее слово (слова разделены пробелами)
Еще ссылки по теме:

C++ Удалить в строке последнее слово и удвоить предпоследнее
Предпоследнее и последнее слово C++
C++ Вывести все слова, которые имеют четную длину и содержат в качестве подстроки последнее слово
В тексте все слова разделены пробелами и знаками препинания C++

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

Или воспользуйтесь поиском по форуму:
frax007
0 / 0 / 0
Регистрация: 12.03.2014
Сообщений: 13
15.03.2014, 00:39  [ТС]     Вывести на экран предпоследнее и последнее слово (слова разделены пробелами) #7
Спасибо, всё работает!!!
Yandex
Объявления
15.03.2014, 00:39     Вывести на экран предпоследнее и последнее слово (слова разделены пробелами)
Ответ Создать тему
Опции темы

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