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

Из введенной строки исключить слова, содержащие заданную букву - C++

Восстановить пароль Регистрация
 
Nike0
6 / 6 / 0
Регистрация: 29.11.2009
Сообщений: 55
28.10.2010, 11:11     Из введенной строки исключить слова, содержащие заданную букву #1
Доброго времени суток, форумчане. Как и большинство подобных задач про строки на этом форуме, моя задача состоит из 3 задач, две из которых уже решены. Третье задание заключается в том, чтобы из введенной строки исключить слова, содержащие, например, букву 'i' , и потом то что осталось, вывести на экран. Если не сложно, то используйте стринг, а то я с чаром на Вы =)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2010, 11:11     Из введенной строки исключить слова, содержащие заданную букву
Посмотрите здесь:

C++ Распечатать все слова из каждой строки, начинающиеся и заканчивающиеся на заданную букву.
C++ Найти слова, содержащие букву “s”
C++ Для строки объединить в отдельную строку все слова, имеющие заданную букву, разделив их одним пробелом
Найти слова, содержащие букву “d” C++
C++ У каждого слова введенной строки поменять местами первую и последнюю букву.
Вывести только те слова из строки, которые начинаются и оканчиваются на заданную букву C++
C++ Присоединить к меньшей по длине строке большую и исключить слова, содержащие меньше двух букв
В строке указать слова содержащие заданную букву C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dexter
 Аватар для Dexter
284 / 144 / 16
Регистрация: 13.10.2009
Сообщений: 164
28.10.2010, 11:54     Из введенной строки исключить слова, содержащие заданную букву #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
#include <string>
#include <iostream>
using namespace std;
int main( ) 
{
   char c;
   string s2;
   string res="";
   cout<<"Enter string:"<<endl;
   getline(cin,s2);
   cout<<"Searching char: ";
   cin>>c;
   int P,Ch;
   P=s2.find(' ');
   Ch=s2.find(c);
   while(Ch!=-1&&P!=-1)
   {
      if(Ch>P)
    res=res+s2.substr(0,P+1);
      s2 = s2.substr ( P+1 , s2.length()-P-1 );
      P=s2.find(' ');
      Ch=s2.find(c);
   }
   if(Ch==-1)res=res+s2;
   cout<<"Result:"<<endl<<res<<endl;
   system("pause");
   return 0;
}
Например, вот так будет выбрасывать слова в которых встречается заданная буква.
Запятые и точки игнорируются.
МаксимМВ
C/C++
90 / 90 / 5
Регистрация: 01.07.2010
Сообщений: 281
28.10.2010, 11: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
#include <iostream>
using namespace std;
 
int main(int argc, char *argv[])
{
    char str[256];
    cout<<"Введите строку:"<<endl;
    cin.getline(str,sizeof(str));
    bool sl=false;
    int numns=0;
    for (int i=0;;i++)
    {
        if (str[i]=='i'||str[i]=='I')
            sl=true;
        if (str[i]==' '||str[i]=='\t'||str[i]=='\0')
        {
            if (!sl)
                for (int j=numns;j<i;j++)
                    cout<<str[j];
            sl=false;
            numns=i;
            if (str[i]=='\0') break;
        }
    }
    return 0;
}
Хотя ты можешь заменить успешно заменить char[] на string.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
28.10.2010, 13:47     Из введенной строки исключить слова, содержащие заданную букву #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <string>
#include <sstream>
 
int main(){
    std::string buf;
    char ch;
    std::cout << "String: ";
    std::getline(std::cin, buf);
    std::cout << "Character: ";
    std::cin >> ch;
 
    std::istringstream ist(buf);
    std::ostringstream ost;
    while ( ist >> buf )
        if ( buf.find(ch) == std::string::npos )
            ost << buf << ' ';
    std::cout << "Result: " << ost.str() << std::endl;
 
    return 0;
}
Yandex
Объявления
28.10.2010, 13:47     Из введенной строки исключить слова, содержащие заданную букву
Ответ Создать тему
Опции темы

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