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

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

Войти
Регистрация
Восстановить пароль
 
Serega-ekb
0 / 0 / 0
Регистрация: 07.06.2009
Сообщений: 3
#1

Подсчитать, сколько в трёх различных строках буквенных символах, а сколько цифровых - C++

07.06.2009, 21:04. Просмотров 630. Ответов 9
Метки нет (Все метки)

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

Ввести двумерный массив 4*4, подсчитать кол-во (+) и (-) элементов и вывести статистику по строкам, сколько (+), сколько (-) и подсчитать общую сумму - C++
не получается никак сделать многомерный массив... помогите пожалуйста #include <iostream> #include <ctime> using namespace...

Подсчитать, сколько различных символов встречается в строке - C++
пожалуйста!!! помогите!!! совершенно не знаю как решить это задание дана строка. подсчитать, сколько различных символов встречается в...

Подсчитать сколько различных букв использовано при написании строки - C++
Задана строка. Подсчитать сколько различных букв использовано при написании строки.( строка:мама.результат работы программы-2 буквы)

Дана строка. Подсчитать, сколько различных символов встречается в ней. Вывести их на экран. - C++
Помогите решить задачи: 1. Найти все простые натуральные числа, не превосходящие n, двоичная запись которых представляет собой палиндром,...

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

Ввести массив А(10), подсчитать сколько в нем четных, сколько нечетных элементов - C++
2. Ввести массив А(10), подсчитать сколько в нем четных, сколько нечетных элементов.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ISergey
Maniac
Эксперт С++
1374 / 885 / 52
Регистрация: 02.01.2009
Сообщений: 2,658
Записей в блоге: 1
07.06.2009, 21:14 #2
так пойдет
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <algorithm>
 
 
int count_digit(const char* str){
    return static_cast<int>( std::count_if(str, str + strlen(str),isdigit) );
}
 
int count_alpha(const char* str){
    return static_cast<int>( std::count_if(str, str + strlen(str),isalpha) );
}
 
int main()
{
    char str[] = "string.1234567";
    std::cout << "string: " << str << '\n';
    std::cout << "digit: " << count_digit(str) << '\n';
    std::cout << "alpha: " << count_alpha(str) << '\n';
    return 0;
}
0
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
07.06.2009, 21:26 #3
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
#include <iostream.h>
#include <conio.h>
#include <math.h>
#include <string.h>
int cifri(char *s)
{
 char *z="0123456789";
 int kolvo=0;
 for (int i=0;i<strlen(s);i++)
  if (strchr(z,s[i])) kolvo++;
 return kolvo;
}
int simvoli(char *s)
{
char *z="0123456789";
int kolvo2=0;
for (int i=0;i<strlen(s);i++)
 if (!strchr(z,s[i])) kolvo2++;
 return kolvo2;
}
 
 
int main()
{
clrscr();
char *s;
cin>>s;
cout<<"cifr"<<' '<<cifri(s)<<endl;
cout<<"simvolov"<<' '<<simvoli(s)<<endl;
getch();
return 0;
}
смысл думаю понятен дорабатывай
0
ISergey
Maniac
Эксперт С++
1374 / 885 / 52
Регистрация: 02.01.2009
Сообщений: 2,658
Записей в блоге: 1
07.06.2009, 21:30 #4
Цитата Сообщение от Андрейка Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
int simvoli(char *s)
{
char *z="0123456789";
int kolvo2=0;
for (int i=0;i<strlen(s);i++)
 if (!strchr(z,s[i])) kolvo2++;
 return kolvo2;
}
так выйдет что твоя ф-ция будет считать пробелы и все остальные знаки
0
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
07.06.2009, 21:31 #5
а ну да а ну тогда забей в строку все буквенные символы )
0
ISergey
Maniac
Эксперт С++
1374 / 885 / 52
Регистрация: 02.01.2009
Сообщений: 2,658
Записей в блоге: 1
07.06.2009, 21:32 #6
лучше так переделать
C++
1
2
3
4
5
6
7
int simvoli(char *s)
{
    int kolvo2 = 0;
    for (int i=0;i < strlen(s); i++)
        if (isalpha(s[i])) kolvo2++;
    return kolvo2;
}
0
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
07.06.2009, 21:33 #7
точно , просто забыл об изальфах издигитах разных)
0
Search..
Заказ софта
340 / 185 / 10
Регистрация: 26.05.2009
Сообщений: 863
07.06.2009, 21:34 #8
Вот мой скромный вариант готовой программы:

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
#include <stdio.h>
#include <ctype.h>
#include <string.h>
 
void strwnp(char *string)
{
    int w = 0, i = 0;
    for(; i < strlen(string); i++)
    {
        if(isalpha(string[i])) w++;
    }
    
    printf("Word: %d\n", w);
    printf("Not word: %d\n", i - w);
    printf("-------------------\n");
}
 
int main(int argc, char * argv [])
{
    char one[50], two[50], three[50];
    printf("String one: ");
    gets(one);
    printf("String two: ");
    gets(two);
    printf("String three: ");
    gets(three);
 
    printf("-------------------\n");
 
    strwnp(one);
    strwnp(two);
    strwnp(three);
 
    return 0;
}
1
Serega-ekb
0 / 0 / 0
Регистрация: 07.06.2009
Сообщений: 3
07.06.2009, 22:34  [ТС] #9
Ничево себе спасибо ребята)))
0
#pragma
Временно недоступен
952 / 223 / 6
Регистрация: 12.04.2009
Сообщений: 921
07.06.2009, 23:20 #10
Я вот тут подумал,а не лучше ли заменять(там,где возможно)
C++
1
for (int i=0;i < strlen(s); i++)
на
C++
1
for (int i=strlen(s);i;--i)
Ведь мы не изменяем размер строки,так зачем каждый раз его "просматривать"?И ещё:при преинкременте не создаётся локальная копия объекта,как при постинкременте?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.06.2009, 23:20
Привет! Вот еще темы с ответами:

Подсчитать, сколько раз выпал орел, сколько - решка - C++
ЗАДАНИЕ Тема: Операторы break и continue. 1. Вы решили достаточно много раз подбросить монету, чтобы убедиться в равновероятности...

Есть ли в символах строки соседние одинаковые пары символов Сколько таких пар в строке - C++
Дано натуральное число n и символы s1, s2,., sn. В символах s1, s2,., sn есть ли &quot;но&quot; и &quot;он&quot; соседние символы?

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

Матрицы. Найти максимальное значение среди буквенных символов и минимальное среди цифровых значений - C++
Задание звучит так:Дана матрица 5х7, элементами которой являются значения сим-вольного типа. Найти максимальное значение среди буквенных...


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

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

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