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

Посчитать количество слов содержащих букву "b/B" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как передвигать указатель чтобы выделить память под новый элемент и добавить новый элемент в массив? http://www.cyberforum.ru/cpp-beginners/thread1239724.html
Допустим есть некое условие,нам нужно при каждом его выполнении выделить память под новый элемент и добавить его в массив. Вопрос:Как передвигать указатель что-бы выделить память под новый элемент и добавить новый элемент в массив?
C++ For_each и аргументы callback-функции; Как передать callback'у больше одного аргумента Изучаю контейнеры и алгоритмы stl по Майерсу . С непривычки слегка охренел и запутался в них . В общем есть у меня простой вызов алгоритма вида for_each(sregex_iterator(html_data.begin(),html_data.end(),e),sregex_iterator(),&urls_callback); Не могу понять , как передать callback'у больше одного аргумента ? То есть если я хочу , допустим , сохранять в vector результаты работы алгоритма .... http://www.cyberforum.ru/cpp-beginners/thread1239715.html
Работа с уравнениями: Как векторы структур разобрать в сами уравнения? C++
Есть кусок программы, которая принимает систему уравнений в виде: вектор уравнений, каждое уравнение – это вектор членов. Каждый член – это структура, членами которой являются имя переменной, коэффициент и степень. #include <iostream> #include <cstring> #include <cctype> #include <conio.h> using std::cout; using std::cin; using std::endl;
Box2d как установить в проект? C++
как Подключить box2d к VS 2012, искал в гугле там говорится нужно исходники скаченные с офф сайта скомпилировать Cmake. ну я попробывал, вышло но lib файлов так и не появилось. Просветите что ввобще делать то как блин мне сюда вставить изображение!!! блокирует урл s018 . radikal . ru / i520 / 1408 / 70 / 6fc64c842d62 . png Добавлено через 51 минуту *Собирал проект не было ошибок,...
C++ Найти ошибку в регулярном выражении http://www.cyberforum.ru/cpp-beginners/thread1239668.html
Использую RegExpr модуль от Андрея Сорокина. Сделал небольшое изменение для удобства использования в билдере: const // EscChar = '\'; // 'Escape'-char ('\' in common r.e.) used for escaping metachars (\w, \d etc). EscChar = '/'; // 'Escape'-char ('\' in common r.e.) used for escaping metachars (\w, \d etc). //Изменил для Сбилдера Есть выражение r->Expression ="<error (.*?)<//error>";...
C++ Длина short[] - Почему размер массива внутри make отличается? Доброе время суток, господа. #include <iostream> #include <vector> #include <algorithm> using namespace std; template <typename Container> Container make(const short s) { подробнее

Показать сообщение отдельно
gru74ik
Модератор
Эксперт CЭксперт С++
4155 / 1781 / 197
Регистрация: 20.02.2013
Сообщений: 4,905
Записей в блоге: 21
07.08.2014, 22:30
Как-то так:

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
// Задание: написать программу, которая предлагает пользователю
// ввести строку, состоящую из нескольких слов, разделённых
// пробелами, а затем считает количество слов, содержащих букву b или B.
 
#include <iostream>
#include <string>
 
using namespace std;
 
void letter_bCounter(string);  // прототип функции letter_bCounter()
 
int main()
{
    string myString;
 
    cout << "Enter string: ";
    getline(cin, myString);
    letter_bCounter(myString);   // вызов функции letter_bCounter()
 
    cin.get();
 
    return 0;
}
 
void letter_bCounter(string myString)   // реализация функции letter_bCounter()
{
    bool word = true;
    int count = 0;
    if (myString == "")
        cout << "String is empty\n";
 
    for (int i = 0; i<=myString.size(); ++i)
    {
        if (myString[i] == ' ')
        {
            word = true;
        }
        if ((myString[i] == 'b' || myString[i] == 'B') && word)
        {
            word = false;
            ++count;
        }
 
    }
    cout << "\nYou have entered " << count
         << " words containing the characters b or B.\n";
}


Цитата Сообщение от IseeYpuSuka Посмотреть сообщение
это ведь не имеет значения без выражения
Скотт Мейерс "Наиболее эффективное использование C++. 35 новых рекомендаций" (2000, ДМК),
глава 2, правило 6 (стр. 45-48):
Цитата Сообщение от Скотт Мейерс
Если вы относитесь к программистам, которые заботятся об эффективности кода, то вас, вероятно, обеспокоила реализация постфиксного инкрементного оператора. Эта функция создает временный объект для возвращаемого значения (см. правило 19), а ее реализация, приведенная выше, создает также временный объект (oldValue), для которого вызывается и конструктор, и деструктор. Префиксная инкрементная функция вообще не генерирует временных объектов. Это приводит к впечатляющему выводу: из соображений эффективности клиенты UPInt должны всегда предпочитать префиксную форму инкрементного оператора, если им только не требуется функциональность постфиксной формы. Давайте проясним это. Работая с пользовательскими типами, программист должен применять префиксную форму при каждой возможности, потому что она обеспечивает более эффективный код.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru