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

Определить сколько раз в строке встречается заданное слово - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.86
serega721
4 / 4 / 0
Регистрация: 04.10.2009
Сообщений: 168
30.03.2010, 19:32     Определить сколько раз в строке встречается заданное слово #1
Помогите пожалуйста в строках вообще ничего непонимаю!
Задача:1
Определить сколько раз в строке встречается заданное слово.
Задача:2
Подсчитать в строке число букв а и в если а>0, то удалить в строке все символы в.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.03.2010, 19:32     Определить сколько раз в строке встречается заданное слово
Посмотрите здесь:

Определить сколько раз данное слово встречается в тексте C++
Определить сколько раз встречается в строке самое длинное слово C++
Определить сколько раз в строке встречается заданное число C++
C++ Определить, сколько раз заданное сочетание символов встречается в строке
Подсчитать, сколько раз заданное слово встречается в сообщении C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Voron8
13 / 13 / 1
Регистрация: 28.04.2009
Сообщений: 62
30.03.2010, 19:52     Определить сколько раз в строке встречается заданное слово #2
№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
    char stroca[]={"akls fdbahsj dfjbj klfbjh dbhtbf"};
    int a=0;    //счетчик символов 'a'
    for(int i=0;stroca[i];i++){
        if(stroca[i]=='a'){
            a++;
        }
    }
    cout<<"'a'="<<a<<endl;
    cout<<stroca<<endl;
    // если 'a' не встретилось выходим
    if(!a){ system("pause");return 0;}  
    
    int b=0;   //счетчик символов 'b'
    for(int i=0;stroca[i];i++){
        if(stroca[i]!='b'){
            if(i){
                stroca[i-b]=stroca[i];      //перенос
                if(b){stroca[i-b+1]='\0';}  //на всякий случай 
            }
        }else{
            b++;
        }
    }
    
 
cout<<stroca;
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9372 / 5422 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
30.03.2010, 20:33     Определить сколько раз в строке встречается заданное слово #3
Цитата Сообщение от serega721 Посмотреть сообщение
Определить сколько раз в строке встречается заданное слово.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <sstream>
#include <string>
 
int main(){
    std::string str, wrd, tmp;
    std::cout << "String: ";
    std::getline(std::cin, str);
    std::cout << "Word: ";
    std::cin >> wrd;
 
    std::istringstream ist(str);
    size_t cnt = 0;
    while ( ist >> tmp )
        if ( tmp == wrd )
            ++cnt;
    std::cout << "meet " << cnt << " times." << std::endl;
 
    return 0;
}
Добавлено через 16 минут
Цитата Сообщение от serega721 Посмотреть сообщение
если а>0, то удалить в строке все символы в.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <string>
 
int main(){
    std::string s;
    std::cout << "String: ";
    std::getline(std::cin, s);
    size_t pos;
    if ( s.find_first_of('a') != std::string::npos )
        while ( ( pos = s.find_first_of('b') ) != std::string::npos )
            s.erase(pos, 1);
    std::cout << "Result: " << s << std::endl;
 
    return 0;
}
Nameless One
Эксперт С++
 Аватар для Nameless One
5753 / 3402 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
30.03.2010, 20:49     Определить сколько раз в строке встречается заданное слово #4
1
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>
 
int main()
{
    std::string str, word, w;
    std::getline(std::cin, str);
    std::cin >> word;
    w=word;
    str=" " + str + " ";
    word=" " + word + " ";
    size_t cnt=0, index=0;
    while((index=str.find(word, index))!=std::string::npos)
    {
        ++cnt;
        index+=word.size()-1;
    }
    std::cout << "\'" << w << "\' occures " << cnt << " times" << std::endl;
    system("pause");
    return 0;
}
Yandex
Объявления
30.03.2010, 20:49     Определить сколько раз в строке встречается заданное слово
Ответ Создать тему
Опции темы

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