Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Chymardos
0 / 0 / 2
Регистрация: 29.01.2013
Сообщений: 78
#1

Подсчитать количество различных символов, которые не являются буквами или цифрами, и вывести их на экран

18.11.2013, 01:01. Просмотров 853. Ответов 6
Метки нет (Все метки)

Задание:
Дана строка. Подсчитать количество различных символов, которые не являются буквами или цифрами, и вывести их на экран.
Как это сделать ? Вообще в этом не разбираюсь(
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2013, 01:01
Ответы с готовыми решениями:

Подсчитать в строке количество символов, которые не являются ни цифрами, ни буквами
Ребят помогите плиз сделать в визио 2008 (пустой фаил, среда С++) задача звучит...

Подсчитать количество символов в строке, которые не являются цифрами
Подсчитать количество символов в строке,которые не являются цифарми. Помогите...

Вывести на экран строку, удалив символы, которые не являются буквами
После ввода с клавиатуры произвольного строки вывести на экран эту строку с...

Вывести на экран строку с отобранными из введенной символами, которые не являются буквами
Моя задача: После ввода с клавиатуры произвольного строки вывести на экран эту...

Дана строка. Подсчитать, сколько различных символов встречается в ней. Вывести их на экран.
Помогите решить задачи: 1. Найти все простые натуральные числа, не...

6
rrrFer
Заблокирован
18.11.2013, 07:01 #2
Например так?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int main() {
    std::string str;
    std::set<char> st;
    
    std::getline (std::cin, str);
    
    for (auto t : str) 
        if (false == isalnum(t)) 
            st.insert(t);
        
    std::cout << st.size() << std::endl;
    
    for (auto t : st) 
        std::cout << t << ' ';
}
1
bradobrei
Продам уран 238U
120 / 120 / 126
Регистрация: 22.01.2013
Сообщений: 298
18.11.2013, 07:51 #3
держи, можешь доработать
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <cstring>
int main(){
const char in[] = "weg 23 !! ih!fj- wj ++#21#$4 b b$";
int tmp = strlen(in);
char out[100];
int q = 0;
for(int i = 0; i < tmp; i++){
        //cout<<in[i]<<endl;
    if(((in[i] <= 'a' && in[i] <= 'z') && (in[i] <= 'A' && in[i] <= 'Z') && (in[i] <= '0' && in[i] <= '9'))) {
        out[q] = in[i];
        cout << out[q] << endl;
        q++;
        }
    }
return 0;
}
1
dzrkot
zzzZZZ...
523 / 354 / 94
Регистрация: 11.09.2013
Сообщений: 2,039
18.11.2013, 09:59 #4
Цитата Сообщение от rrrFer Посмотреть сообщение
for (auto t : str)
можно поинтересоваться условием данного цикла? не понимаю я его...)
1
Chymardos
0 / 0 / 2
Регистрация: 29.01.2013
Сообщений: 78
18.11.2013, 10:48  [ТС] #5
Ребята, всем спасибо кто помог, очень помогли)
0
rrrFer
Заблокирован
18.11.2013, 16:14 #6
Цитата Сообщение от bradobrei Посмотреть сообщение
держи, можешь доработать
Твой код неправильный, смотри в задание:
Подсчитать количество различных символов, которые не являются буквами или цифрами, и вывести их на экран.
ключевое слово выделил цветом. И еще, твое условие эпически кривое. Символ ^ считается за букву или цифру, например (но суть даже не в этом, посмотри на условие, убери лишние скобки, посмотри на условие еще раз)

можно поинтересоваться условием данного цикла? не понимаю я его...)
это цикл по коллекции. Введен в с++11.
Строка - тоже контейнер: http://www.cplusplus.com/reference/string/string/
The standard string class provides support for such objects with an interface similar to that of standard containers, but adding features specifically designed to operate with strings of characters.
Цитата Сообщение от dzrkot Посмотреть сообщение
C
1
for (auto t : str)
локальная переменная t автоматического типа (тип выводится компилятором) последовательно принимает значение каждого элемента контейнера.
1
ForEveR
В астрале
Эксперт С++
7995 / 4754 / 651
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
18.11.2013, 16:21 #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
#include <set>
#include <cctype>
#include <algorithm>
 
int main()
{
   const std::string str = "hello.,..123m,akjjk:111-0-00-8888!this";
   std::set<char> result;
   std::copy_if(str.begin(), str.end(), std::inserter(result, result.end()), [](char c)
   {
      return !std::isalnum(c);
   });
   for (auto c : result)
   {
      std::cout << c;
   }
   std::cout << std::endl;
}
0
18.11.2013, 16:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2013, 16:21

Подсчитать количество различных элементов в очереди и вывести их на экран
1. Подсчитать число различных элементов в очереди и вывести их на экран 2. ...

Подсчитать и вывести на экран количество слов, символами которых являются двоичные цифры
Строка, введенная пользователем, состоит из слов, разделенных запятой....

Подсчитать количество строк, которые начинаются и заканчиваются одинаковыми буквами
Буду благодарен за помощь. Задание: Подсчитать количество строк, которые...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru