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

Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) - C++

Восстановить пароль Регистрация
 
toxic27
0 / 0 / 0
Регистрация: 20.01.2014
Сообщений: 13
20.06.2014, 14:43     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #1
Дана фраза. Выяснить, сколько в ней символов-разделителей (пробелов, точек, тире, запятых ит.д.)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.06.2014, 14:43     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.)
Посмотрите здесь:

Дана строка, состоящая из букв, цифр, запятых, точек, знаков «+» и «–». Выделить подстроку, которая соответствует записи целого числа. C++
Выяснить, сколько в строке цифровых символов C++
Найти, каких символов больше точек или запятых на С++ C++
Подсчитать в строке количество пробелов и символов C++
Дана строка символов, состоящая из букв, цифр, запятых, точек, знаков «+» и «–». Выделить подстроку, которая соответствует записи вещественного числа C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11807 / 6786 / 767
Регистрация: 27.09.2012
Сообщений: 16,840
Записей в блоге: 2
Завершенные тесты: 1
20.06.2014, 14:49     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
#include <algorithm>
#include <cctype>
 
 
bool pred ( char x )
{
   return ispunct(x) || isspace(x) ;
}
 
 
int main(){
   std::string str ;
   std::getline ( std::cin , str ) ;
   std::cout << "\nCount = " << std::count_if ( str.begin() , str.end() , pred ) << std::endl ;
}
toxic27
0 / 0 / 0
Регистрация: 20.01.2014
Сообщений: 13
22.06.2014, 23:25  [ТС]     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #3
Программа не выдает результат.Буду очень благодарен, если поможете устранить проблему.
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
22.06.2014, 23:28     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #4
Цитата Сообщение от toxic27 Посмотреть сообщение
Программа не выдает результат.
Выдаёт, см. http://ideone.com/HQaw0U.
Вводим фразу и жмакаем <Enter>.
toxic27
0 / 0 / 0
Регистрация: 20.01.2014
Сообщений: 13
22.06.2014, 23:40  [ТС]     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #5
Заметил, что работает, но результат появляется буквально на пол секунды и программа закрывается. Не подскажете, как сделать задержку, или программа не закрывалась самостоятельно?
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
22.06.2014, 23:42     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #6
toxic27, Visual Studio, ммм? Выбирай Запуск без отладки/Start without debugging (Ctrl+F5, насколько я помню).
Kerry_Jr
Модератор
 Аватар для Kerry_Jr
1855 / 1651 / 574
Регистрация: 14.05.2014
Сообщений: 4,726
Записей в блоге: 1
Завершенные тесты: 5
22.06.2014, 23:43     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #7
Немножко проще
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <cstdlib>
#include <string>
using namespace std;
 
int main ( )
{
    setlocale(LC_ALL, "");
    string str;
    getline(cin, str);
    int count = 0;
    for (int i = 0; i < str.size(); i++)
        if (!isalpha(str[i]) && !isdigit(str[i])) count++;
    cout << count << endl;
    system("pause");
    return 0;
}
toxic27
0 / 0 / 0
Регистрация: 20.01.2014
Сообщений: 13
22.06.2014, 23:44  [ТС]     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #8
DEV C++
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
22.06.2014, 23:47     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #9
toxic27, думаю там есть похожий способ; system("pause") ИМХО не особо, хотя работает конечно...
toxic27
0 / 0 / 0
Регистрация: 20.01.2014
Сообщений: 13
22.06.2014, 23:51  [ТС]     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #10
2 вариант программы выдает ошибку(

Добавлено через 3 минуты
Цитата Сообщение от gray_fox Посмотреть сообщение
думаю там есть похожий способ; system("pause")
не могу понять куда вставить, вот балбес
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
22.06.2014, 23:53     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #11
Цитата Сообщение от toxic27 Посмотреть сообщение
не могу понять куда вставить
в конец) + #include <cstdlib> (там объявлена ф-я std::system)
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 <algorithm>
#include <cstdlib>
#include <cctype>
 
 
bool pred ( char x )
{
   return ispunct(x) || isspace(x) ;
}
 
 
int main(){
   std::string str ;
   std::getline ( std::cin , str ) ;
   std::cout << "\nCount = " << std::count_if ( str.begin() , str.end() , pred ) << std::endl ;
 
   std::system("pause");
}
toxic27
0 / 0 / 0
Регистрация: 20.01.2014
Сообщений: 13
22.06.2014, 23:58  [ТС]     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #12
большое спасибо, разобрался сам
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.06.2014, 00:07     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.)
Еще ссылки по теме:

Дана строка символов. Выяснить имеются ли в данной строке рядом стоящие запятая и тире C++
C++ Выяснить, имеется ли пара соседствующих символов ",-" "-," (запятая, тире) в тексте
Выяснить, есть ли в данной строке кома, после которой дальше в строке есть тире C++

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

Или воспользуйтесь поиском по форуму:
Kerry_Jr
Модератор
 Аватар для Kerry_Jr
1855 / 1651 / 574
Регистрация: 14.05.2014
Сообщений: 4,726
Записей в блоге: 1
Завершенные тесты: 5
23.06.2014, 00:07     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.) #13
какую ошибку?
Yandex
Объявления
23.06.2014, 00:07     Записи. Выяснить в сколько строке символов-разделителей (пробелов, точек, тире, запятых ит.д.)
Ответ Создать тему
Опции темы

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