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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Chymardos
0 / 0 / 0
Регистрация: 29.01.2013
Сообщений: 78
#1

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

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

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

C++ Даны три целых числа. Вывести на экран те из них, которые являются положительными.
C++ Дана строка. Подсчитать, сколько различных символов встречается в ней. Вывести их на экран.
C++ Подсчитать количество различных элементов в очереди и вывести их на экран
C++ Определить число вхождений в строку подстроки "аба", вывести символы строки, не являющейся буквами или цифрами
C++ Подсчитать количество различных цифр и вывести их
C++ Число символов строке не являющихся ни буквами, ни цифрами
Подсчитать количество символов в строке, которые не являются цифрами C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
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 << ' ';
}
bradobrei
Продам уран 238U
 Аватар для bradobrei
119 / 119 / 23
Регистрация: 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;
}
dzrkot
zzzZZZ...
 Аватар для dzrkot
516 / 346 / 53
Регистрация: 11.09.2013
Сообщений: 1,994
18.11.2013, 09:59     Подсчитать количество различных символов, которые не являются буквами или цифрами, и вывести их на экран #4
Цитата Сообщение от rrrFer Посмотреть сообщение
for (auto t : str)
можно поинтересоваться условием данного цикла? не понимаю я его...)
Chymardos
0 / 0 / 0
Регистрация: 29.01.2013
Сообщений: 78
18.11.2013, 10:48  [ТС]     Подсчитать количество различных символов, которые не являются буквами или цифрами, и вывести их на экран #5
Ребята, всем спасибо кто помог, очень помогли)
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 автоматического типа (тип выводится компилятором) последовательно принимает значение каждого элемента контейнера.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2013, 16:21     Подсчитать количество различных символов, которые не являются буквами или цифрами, и вывести их на экран
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 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;
}
Yandex
Объявления
18.11.2013, 16:21     Подсчитать количество различных символов, которые не являются буквами или цифрами, и вывести их на экран
Ответ Создать тему
Опции темы

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