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

Все слова, не содержащие "bc" и заканчивающиеся на "ad" заменить на "!" - C++

Восстановить пароль Регистрация
 
delexa
2 / 2 / 1
Регистрация: 02.03.2011
Сообщений: 134
06.03.2013, 03:26     Все слова, не содержащие "bc" и заканчивающиеся на "ad" заменить на "!" #1
В чем ошибка?

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
//Все слова, не содержащие "bc" и заканчивающиеся на "ad" заменить на "!"
 
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    string s,s1=" ",s2,s3,s4;
    int k,d,f,t;
    getline(cin,s);
    s.append (" ");
    d=s.length();
    t=0;
    k=s.find(" ");
        while (k<d)
        {
            s2=s.substr(t,k);
            f=s2.find("bc"); 
            if (f<s2.size()){  s4.append(s2);  
                                s4.append(" ");}
             else           {s3=s2.substr(s2.size()-2,2);
             if (s3=="ad") s4.append (" ! "); else {s4.append(s2); s4.append(" ");}}
             t=k+1;
             k=s.find(" ", k+1);}
             cout<<s4; return 0;
        }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.03.2013, 03:26     Все слова, не содержащие "bc" и заканчивающиеся на "ad" заменить на "!"
Посмотрите здесь:

C++ Заменить в последовательности символов после первого вхождения символа "+" все цифры на символ "-"
C++ Ввести с клавиатуры строку, заменить в ней все буква "а" на букву "b"
C++ Определить длину каждого слова. Удалить все буквы "а" и "о" с фамилии
C++ В заданном двоичном коде заменить все цифры "0" на "1" и наоборот
C++ Найти и заменить в строке все символы "а" на "b"
C++ Заменить в тексте все пары "ph" на букву "f"
Перебрать все слова длиной не более n, составленные из букв "а" и "b" C++
C++ Заменить всякое вхождение слова "это" на слово "то"
Во введённом предложении заменить все сочитания "ах" на "ух" C++
Найти все вхождения в строку последовательности символов "сто" и заменить на "100" C++
C++ Удалить из текста все слова, оканчивающиеся группой букв "ing" и "ed"
Может ли MSXML в XML файле найти все вхождения "123" в значениях атрибутов элементов и заменить их на "321"? C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
06.03.2013, 11:17     Все слова, не содержащие "bc" и заканчивающиеся на "ad" заменить на "!" #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
#include <iostream>
#include <cstring>
#include <string>
 
using namespace std;
 
int main()
{
    char s[]="qwerad bcrtyuad  bcasd qwerty";
    char *curPos;
    string s1;
    curPos=strtok(s," ");
    while(curPos!=NULL)
    {
        size_t x;
        x=strlen(curPos);
        if ((strstr(curPos,"bc")==0) && *(curPos+x-2)=='a' && *(curPos+x-1)=='d') s1=s1+'!'+' ';
        else s1=s1+curPos+' ';
        curPos=strtok(NULL," ");
    }
    cout<<s1;
    return 0;
}
alsav22
5284 / 4803 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
06.03.2013, 12:23     Все слова, не содержащие "bc" и заканчивающиеся на "ad" заменить на "!" #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>
#include <string>
#include <cstdlib>
using namespace std;
 
int main()
{
    string str;
    string temp;
    
    while(cin.peek() != '\n')
    {
        cin >> temp;
        
        if (temp.find("bc") == -1 && !temp.compare(temp.size() - 2, 2, "ad"))
            str.append("! ");
        else
            str.append(temp + " ");
    }
    str.erase(str.end() - 1);
    
    cout << str << endl;
    
    system("pause");
    return 0;
}
Yandex
Объявления
06.03.2013, 12:23     Все слова, не содержащие "bc" и заканчивающиеся на "ad" заменить на "!"
Ответ Создать тему
Опции темы

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