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

строка содержащая более одного слова - C++

Восстановить пароль Регистрация
 
-=VenD=-
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 21
10.12.2010, 23:34     строка содержащая более одного слова #1
помогите пожалуйста напсать прогу:

1) Написать программу, которая позволяет вводить с клавиатуры строку, содержащую более одного слова, и определять: а) количество символов введённой строки; б) содержит ли строка слова одинаковой длины; в) ко-личество запятых. Необходимо учесть, что при вводе строки, могут ис-пользоваться не только пробелы, но и знаки пунктуации.

Добавлено через 2 часа 12 минут
помогите

Добавлено через 6 часов 8 минут
=====

Добавлено через 23 часа 10 минут
=====

Добавлено через 4 часа 27 минут
=====
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2010, 23:34     строка содержащая более одного слова
Посмотрите здесь:

Дана строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова, содержащие три буквы. C++
Дана строка, содержащая текст на русском языке и некоторые 2 слова. Определить, сколько раз они входят непосредственно друг с другом. C++
Дана строка, содержащая текст. Вывести все слова, повторяющиеся более трех раз. C++
C++ Дана строка, содержащая текст. Найти длину самого короткого слова.
Дана строка, содержащая два слова, разделённых пробелом, вывести неповторяющиеся буквы слов. C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=VenD=-
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 21
12.12.2010, 18:33  [ТС]     строка содержащая более одного слова #2
=====
-=VenD=-
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 21
15.12.2010, 19:26  [ТС]     строка содержащая более одного слова #3
=====
-=VenD=-
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 21
18.12.2010, 19:05  [ТС]     строка содержащая более одного слова #4
=====
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
19.12.2010, 00:42     строка содержащая более одного слова #5
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include <iostream>
#include <string>
#include <sstream>
#include <iterator>
#include <vector>
 
size_t get_cnt_symbol(std::string &str)
{
    size_t cnt_prob = 0;
 
    for(std::string::iterator it = str.begin(); it != str.end(); ++it)
        if(*it == ' ')
            ++cnt_prob;
 
    return str.length() - cnt_prob;
}
 
bool foo(std::string &str)
{
    std::string del(" ,.!?:;"), tmp;
    std::vector<std::string> vec;
 
    for(std::string::iterator it = str.begin(); it != str.end(); ++it)
        if(del.find(*it) != std::string::npos)
            *it =' ';
 
    std::istringstream ist(str);
    while(ist >> tmp)
        vec.push_back(tmp);
 
    size_t cnt = 0, i = 0, j = 0;
    std::vector<std::string>::iterator it, _it;
    for(it = vec.begin(); it != vec.end(); ++it, ++i)
    {
        std::string tmp = *it, _tmp;
        for(_it = it; _it != vec.end(); ++_it, ++j)
        {
            _tmp = *_it;
            if(tmp.length() == _tmp.length())
                ++cnt;
        }
    }
 
    return cnt - 3 >= 1? true : false;
}
 
size_t get_cnt_zap(std::string &str)
{
    size_t cnt = 0;
    for(std::string::iterator it = str.begin(); it != str.end(); ++it)
        if(*it == ',')
            ++cnt;
 
    return cnt;
}
 
int main()
{
    std::string str;
    std::cout << "Input string: ";
    getline(std::cin, str);
 
    std::cout << "\na) -> " << get_cnt_symbol(str)
              << "\nb) -> " << ( foo(str)? "Yes" : "No")
              << "\nc) -> " << get_cnt_zap(str) << std::endl;
 
    return 0;
}
Yandex
Объявления
19.12.2010, 00:42     строка содержащая более одного слова
Ответ Создать тему
Опции темы

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