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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
Дмитрий12
1 / 1 / 0
Регистрация: 19.02.2011
Сообщений: 70
#1

В последовательности символов подсчитать количество букв и количество цифр - C++

12.05.2011, 22:25. Просмотров 1419. Ответов 5
Метки нет (Все метки)

Всем Добрый Вечер!!!Помогите пожалуйста тупенькому =), очень надо. Заранее спс...

1. В последовательности символов подсчитать количество
букв и количество цифр.
2. В последовательности целых чисел определить сумму положительных четных чисел.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.05.2011, 22:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос В последовательности символов подсчитать количество букв и количество цифр (C++):

Не используя массивы, подсчитать во введенной строке символов общее количество цифр и букв S - C++
Как сделать эти программы без массива? Во введенной строке символов подсчитать общее количество цифр и букв S. С++ через Unicode ...

Подсчитать в строке, содержащей арифметическое выражение, количество используемых цифр и букв, заменить "+" на "-", подсчитать количество действий - C++
Ввести строку А с клавиатуры, содержащую арифметическое выражение. Подсчитать количество используемых цифр и букв. Заменить операцию "+" на...

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

Подсчитать количество букв, слов и цифр в строке - C++
Во введенной строке символов подсчитать количество букв (отдельно русского и английского алфавитов), цифр, слов, предложений. (Считать, что...

Подсчитать количество цифровых символов в последовательности - C++
В последовательности из N символов, которые вводятся подсчитать количество цифровых символов(0..9).

Пользователь вводит строку. Определить количество букв (рус eng), количество цифр и количество остальных - C++
в чем проблема не пойму работает на английских буквах на цифрах и остальные символы вроде считает а вот русские не хочет их забивает как...

5
Петррр
5972 / 3409 / 337
Регистрация: 28.10.2010
Сообщений: 5,926
12.05.2011, 22:34 #2
1. В последовательности символов подсчитать количество
букв и количество цифр.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "");
    char *ch = "123123sdfg123kjgh3";
    int chars = 0;
    int nums = 0;
    for(int i = 0; i < strlen(ch); i++)
        if (ch[i] >= '0' && ch[i] <= '9')
            nums++;
        else
            chars++;
    cout << "В строке \"" << ch << "\" " << nums << " цифр и " << chars << " букв\n";
    system("pause");
    return 0;
}
1
asics
Freelance
Эксперт С++
2850 / 1785 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
12.05.2011, 22:37 #3
Цитата Сообщение от Дмитрий12 Посмотреть сообщение
1. В последовательности символов подсчитать количество
букв и количество цифр.
C++
1
2
3
std::count_if(str.begin(), str.end(), isdigit;//цыфр
...
std::count_if(str.begin(), str.end(), isalpha);//букв
2
Петррр
5972 / 3409 / 337
Регистрация: 28.10.2010
Сообщений: 5,926
12.05.2011, 22:41 #4
2. В последовательности целых чисел определить сумму положительных четных чисел.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
using namespace std;
 
int main()
{
    int a[] = {7, -1, 6, 8, 10, -50};
    int sum = 0;
    setlocale(LC_ALL, "");
    cout << "Массив: \n";
    for(int i = 0; i < 6; i++)
    {
        if (a[i] > 0 && a[i] % 2 == 0)
            sum += a[i];
        cout << a[i] << " ";
    }
    cout << "\nСумма четный положительных элементов: " << sum << endl;
    system("pause");
    return 0;
}
1
gooseim
Эксперт С++
508 / 412 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
12.05.2011, 22:47 #5
2. В последовательности целых чисел определить сумму положительных четных чисел.
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <functional>
#include <numeric>
#include <iostream>
 
int main()
{
  const size_t N = 5;
  int arr[N]={3, -5, 2, 1, 4};
  std::cout<<
     std::accumulate(arr, arr+N, 0, [](int x, int y){return x+(y>0 && !(y%2) ? y : 0);})
     <<std::endl;
}
2
easybudda
Модератор
Эксперт CЭксперт С++
9698 / 5648 / 964
Регистрация: 25.07.2009
Сообщений: 10,863
12.05.2011, 23:03 #6
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
#include <stdio.h>
#include <string.h>
#include <ctype.h>
 
enum SYMB_T { ST_DIGIT = 0, ST_ALPHA = 1, ST_SPACE = 2, ST_OTHER = 3, ST_NUMTYPES = 4 };
 
int main(void){
    char buf[BUFSIZ], * p;
    int counters[ST_NUMTYPES];
    
    while ( printf("String: ") && scanf("%[^\n]%*c", buf) == 1 ){
        memset(counters, 0, sizeof(counters));
        for ( p = buf; *p; ++p ){
            if ( isdigit(*p) )
                counters[ST_DIGIT] += 1;
            else if ( isalpha(*p) )
                counters[ST_ALPHA] += 1;
            else if ( isspace(*p) )
                counters[ST_SPACE] += 1;
            else
                counters[ST_OTHER] += 1;
            
        }
        printf("DIGITS:\t%d\nALPHAS:\t%d\nSPACES:\t%d\nOTHERS:\t%d\n",
            counters[ST_DIGIT], counters[ST_ALPHA], counters[ST_SPACE], counters[ST_OTHER]);
    }
    
    return 0;
}
Ну или чуть короче
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <string.h>
#include <ctype.h>
 
enum SYMB_T { ST_DIGIT = 0, ST_ALPHA = 1, ST_SPACE = 2, ST_OTHER = 3, ST_NUMTYPES = 4 };
 
int main(void){
    char buf[BUFSIZ], * p;
    int counters[ST_NUMTYPES];
    
    while ( printf("String: ") && scanf("%[^\n]%*c", buf) == 1 ){
        memset(counters, 0, sizeof(counters));
        for ( p = buf; *p && ( ( isdigit(*p) && (++counters[ST_DIGIT]) ) || ( isalpha(*p) && (++counters[ST_ALPHA]) ) || ( isspace(*p) && (++counters[ST_SPACE]) ) || ( ++counters[ST_OTHER] ) ); ++p )
            ;
        printf("DIGITS:\t%d\nALPHAS:\t%d\nSPACES:\t%d\nOTHERS:\t%d\n",
            counters[ST_DIGIT], counters[ST_ALPHA], counters[ST_SPACE], counters[ST_OTHER]);
    }
    
    return 0;
}
1
12.05.2011, 23:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.05.2011, 23:03
Привет! Вот еще темы с ответами:

Строки. Подсчитать количество заглавных букв в тексте; вывести на экран слова, имеющие наименьшее количество букв... (подправить) - C++
Дано задачу: С клавиатуры вводится строка. Составить программу, которая подсчитывает количество заглавных букв в тексте; выводит на...

Вводится предложение. Подсчитать количество слов и подсчитать количество букв в самом длинном слове - C++
Неправильно считает количество букв в наибольшем слове. #include &lt;iostream&gt; #include &lt;cstdio&gt; #include &lt;cstring&gt; using...

Подсчитать количество знаков пунктуации в последовательности символов - C++
Написать программу, которая подсчитывает количество символов пунктуации в рядке символов, которые вводят с клавиатуры.

Дан текст, в котором слова разделены одним пробелом. а) Подсчитать количество слов в данной строке. б) Подсчитать количество букв а в последнем слове - C++
Дан текст, в котором слова разделены одним пробелом. а) Подсчитать количество слов в данной строке. б) Подсчитать количество букв а в...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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