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

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

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

Программа подсчёта букв - C++

07.11.2013, 13:38. Просмотров 863. Ответов 5
Метки нет (Все метки)

Написать программу подсчета букв е, во введенной строке.
Заранее благодарю.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.11.2013, 13:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программа подсчёта букв (C++):

Программа подсчёта количества символов, букв, слов и предожений - C++
Нужно написать программу 1) Имя передаётся через командную строку 2) Программа должна подсчитывать количество: 1) символов; 2) символов...

Нужно исправить ошибки подсчёта букв и цифр - C++
Задача: Составить программу, которая в файле, сформированном в прошлой программе, подчитывает кол-во букв и цифр. Проблема такая. При...

Программа подсчёта битов - C++
Добрый вечер, кто не спит! Скажите пожалуйста, я вот написал программку, по условию она должна считать количество битов "00" (пар нолей)...

НЕ работает программа подсчёта! - C++
Код писался в MVS 2012 ultimate суть программы состоит в том,чтобы ввести количество пенсо,шилингов, фунтов и пересчитать их с выводом...

Программа подсчёта монет - C++
Даны монеты номиналом 1, 2, 5, 10, 25, 50. Нужно написать программу, в которую вводится любое значение(сумма монет, т.е может быть: 60,...

Программа для подсчёта денег в секундах - C++
Здравствуйте, прошу помочь! Мне нужно сделать программу, которая будет подсчитывать деньги в секундах. К примеру час услуги стоит 600...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
chedman
81 / 80 / 2
Регистрация: 30.10.2013
Сообщений: 251
07.11.2013, 14:00 #2
Как то так
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
#include <iostream>
#include <string>
#include <windows.h>
 
using namespace std;
 
int main()
{
    // кодировка файла CP1251
    // шрифт для консоли типа TrueType
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    string s;
    int cnt=0;
    cout << "Введите строку: " ;
    cin >> s;
 
    for(int i=0; i<s.size(); i++)
    {
        if(s.c_str()[i]=='e' || s.c_str()[i]=='E')  cnt++;
    }
 
    cout << "Английская буква 'E' встретилась " << cnt << " раз" << endl;
    return 0;
}
Правда строка не должна содержать пробелов, но принцип работы такой.

Добавлено через 10 минут
ну или вот ещё вариант, но уже пробел можно ставить в строку
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
#include <iostream>
#include <windows.h>
 
using namespace std;
 
int main()
{
    // кодировка файла CP1251
    // шрифт для консоли типа TrueType
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    char c;
    int cnt=0;
    cout << "Введите строку: " ;
 
    do
    {
        if(c=='e' || c=='E') cnt++;
    }
    while( (c=cin.get())!=10);
 
    cout << "Английская буква 'E' встретилась " << cnt << " раз" << endl;
    return 0;
}
да ещё и не надо хранить строку, в программе
0
ZaMaZaN4iK
Мой лучший друг-отладчик!
164 / 164 / 9
Регистрация: 24.06.2012
Сообщений: 662
Записей в блоге: 5
Завершенные тесты: 1
07.11.2013, 15:52 #3
chedman, а в чём проблема считать строку с пробелами?
C++
1
2
3
4
5
6
7
#include <string>
 
int main()
{
     string s;
     getline(cin,s);
}
Вуаля=)
0
DiffEreD
1430 / 767 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
07.11.2013, 18:00 #4
В качестве альтернативы:
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>
#include <windows.h>
 
int main()
{
   SetConsoleCP (1251); SetConsoleOutputCP (1251);
 
   std::cout << "Введите строку: " ;
   std::string text;
   std::getline(std::cin, text);
 
   std::cout << "Английская буква 'e' встретилась "
        << std::count(text.begin(), text.end(), 'e')
        << " раз(а)." << std::endl;
 
   return 0;
}
1
Vlad_fractal
0 / 0 / 0
Регистрация: 16.10.2013
Сообщений: 78
12.11.2013, 12:04  [ТС] #5
Цитата Сообщение от chedman Посмотреть сообщение
if(s.c_str()[i]=='e' || s.c_str()[i]=='E') cnt++;
Можете прокомментировать эту строку, в частности что значит s.c_str()[i] ?
А также, идентична ли строка
Цитата Сообщение от chedman Посмотреть сообщение
s.size()
строке strlen(s)
0
chedman
81 / 80 / 2
Регистрация: 30.10.2013
Сообщений: 251
13.11.2013, 20:13 #6
C++
1
s.c_str()[i]
c_str нужна для получения си-строки, т.е. строки являющейся обычным массивом символов, а квадратные скобки нужны для получения символа из этого массива.
s.size() и strlen(s) дают один и то же результат.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2013, 20:13
Привет! Вот еще темы с ответами:

Программа на C++ для подсчёта суммы ряда, - C++
Напишите программу, пожалуйста для нахождения суммы ряда на C++ можно через функцию Сама фотка ряда и его закономерность: P.S....

Нужна программа на C++ для подсчёта ряда - C++
Задумки: // ... S = 0; int i = 0; do { S += pow(x, 2*i + 1) / (2*i + 1); } while (&lt;проверка точности&gt;) S *=...

Программа для подсчёта суммы 10 вводимых чисел - C++
Написать программу подсчета суммы 10 чисел, вводимых с клавиатуры, с использованием оператора do...while. Заранее благодарю.

Программа подсчёта логических и физических строк в коде (исходнике другой программы на C++) - C++
Подскажите алгоритм хотя бы....


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
13.11.2013, 20:13
Ответ Создать тему
Опции темы

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