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

Не могу разобраться со строками - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Не работает программа. не могу разобраться что в ней не так http://www.cyberforum.ru/cpp-beginners/thread840668.html
Не работает программа. Не могу разобраться что в ней не так. Программа на вызов функций Н, а, б, с в соответствии с заданием. Заранее огромное спасибо. #include<iostream.h> #include<math.h> ...
C++ Вывод из файла в массив Помогите, надо чтобы из файла каждый символ записывался в массив(1 символ = 1 ячейка массива).Как это сделать? http://www.cyberforum.ru/cpp-beginners/thread840666.html
Определите фамилии абитуриентов, допускаемых ко второму экзамену по положительной сдаче первого. C++
Определите фамилии абитуриентов, допускаемых ко второму экзамену по положительной сдаче первого. Фамилии абитуриентов и результаты сдачи первого экзамена хранятся в соответствующих массивах.
C++ Нарисовать график
Добрый день, подскажите пожалуйста, как нарисовать график зависимости от переменной T - это по y, а func - это по х. Я пересчитываю выражение for(T=0;T<1000;T+=1) { rA=a*pow(T,2);...
C++ Вывести на экран таблицу умножения для числа http://www.cyberforum.ru/cpp-beginners/thread840649.html
3.Пользователь вводит число от 1 до 9. Вывести на экран таблицу умножения для этого числа
C++ Программа должна вычислять значение функции exp(x) действительного аргумента x с точностью ε с использованием рекурсии. Построить рекурсивный алгоритм, записать алгоритм в виде блок-схемы и на алгоритмическом языке. Программа должна вычислять значение функции exp(x) действительного аргумента x с точностью ε с... подробнее

Показать сообщение отдельно
Croessmah
Эксперт CЭксперт С++
13232 / 7504 / 846
Регистрация: 27.09.2012
Сообщений: 18,433
Записей в блоге: 3
Завершенные тесты: 1
17.04.2013, 17:11
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>
using std::string;
using std::cin;
using std::cout;
using std::endl;
 
int main()
{
  string s;
  cin >> s;
  string::size_type punct_cnt = 0;
  for (string::size_type ix = 0; ix < s.size(); ++ix)
    if (ispunct(s[ix])){
        s.erase(ix,1);
          ++punct_cnt;--ix;
     }
  cout << punct_cnt << endl;
  return 0; 
}
Добавлено через 3 минуты
И вот такой вариант еще:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <string>
#include <algorithm>
using std::string;
using std::cin;
using std::cout;
using std::endl;
using std::remove_if;
 
int main(){
  string s;
  cin >> s;
  string::size_type punct_cnt = s.size();
  s.erase(remove_if(s.begin(),s.end(),ispunct),s.end());
  punct_cnt-=s.size();
  cout << punct_cnt << endl;
  cout<<s<<endl;
  return 0; 
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru