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

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

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

Задачка на строки - C++

29.04.2009, 15:06. Просмотров 580. Ответов 7

'Необходимо определить число входящих в строку цифр'

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

задачка на строки - C++
Ребят помогите решить след. задачу: Во введённом тексте заменить цифры от 0 до 9 на слова «ноль, «один», …, «девять». её нужно...

Задачка на строки - C++
Помогите кто может, пожалуйста. Задана строка S. Найдите количество ее различных подстрок, включая пустую. Буквы подстроки могут идти не...

задачка на строки - C++
у кого какие мысли по этой задачке поделитесь Дана строка s, содержащая от 1 до 30 слов, в каждом из которых от 1 до 5 строчных...

задачка на строки - C++
задана строка символов Определить ,встречается ли в ней заданное с клавиатуры слово.Если такое слово встречается в строке.то необходимо...

Инициализация строки - задачка - C++
Сама задачка от Kastaneda: #include <string> #include <iostream> using namespace std; #define DEBUG( str ) do{ cout << #str...

Задачка про строки и слова - C++
Ошибочка закралась: суть задачки надо прочитать файл и вывести слова которые начинаются и кончаются на "a" (ну вот вбил я в свой файл для...

7
Gravity
562 / 556 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
29.04.2009, 15:28 #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <ctype.h>
 
main()
{
    int i, n;
    char s[] = "abc123de45f";
    
    for(i = n = 0; s[i] != '\0'; i++)
        if(isdigit(s[i]))
            n++;
    printf("%d digits in '%s'", n, s);
    return 0;
}
1
kandrey58region
1 / 1 / 0
Регистрация: 11.03.2009
Сообщений: 109
30.04.2009, 00:21  [ТС] #3
спасибо огромное, а можно эту программу как-нибудь попроще решить, более понятным языком, для студента первого курса?
0
Monte-Cristo
2789 / 1375 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
30.04.2009, 00:23 #4
kandrey58region, куда еще ПРОЩЕ?
0
kandrey58region
1 / 1 / 0
Регистрация: 11.03.2009
Сообщений: 109
30.04.2009, 00:57  [ТС] #5
Объясните пожалуйста следующие строки
Цитата Сообщение от Gravity Посмотреть сообщение
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <ctype.h> //что это за модуль?
 
main()
{
    int i, n;
    char s[] = "abc123de45f";
    
    for(i = n = 0; s[i] != '\0'; i++)
        if(isdigit(s[i])) // что такое isdigit ??
            n++;
    printf("%d digits in '%s'", n, s); // как можно это оформить через cout а то printf ни разу не пользовался
    return 0;
}
0
Monte-Cristo
2789 / 1375 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
30.04.2009, 01:16 #6
ну вот в стиле C++
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <cctype> // или ctype.h ... библиотека которая содержит isdigit() в данном примере
using namespace std;
 
int main()
{
    int n = 0;
    char s[255];
 
    cout << "Enter the string:\n";
    cin.getline(s,sizeof(s));
    
    for(int i=0; i<strlen(s); i++)
        if(isdigit(s[i])!=0) n++; // isdigit возвращает не 0 если передается цифра
            
    cout << endl << n << " digits in the string" << endl;
    return 0;
}
1
Фенрир
42 / 38 / 2
Регистрация: 05.01.2009
Сообщений: 394
30.04.2009, 01:54 #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
  #include <algorithm>
#include <iostream>
#include <string>
#include <ctype>
 
 
int main(int argc, char* argv[])
{
 std :: string mystr("abdfgh123ert") ;
 std :: cout<<std :: count_if (mystr.begin(), mystr.end(), isdigit)<<std :: endl;
  std :: cin.get();
        return 0;
}
1
rrrFer
Заблокирован
30.04.2009, 03:25 #8
C
1
2
3
4
5
6
7
8
9
10
11
#include <string>    //для printf()
#include <conio.h>  //для getch()
int main(){
    char s[20]="abdfgh123ert";
    int i,S=0;
    for(i=0;s[i]!=0;i++)
        if(s[i]>=48&&s[i]<=57)
            S=S+s[i]-48;
    printf("%d",S);
    getch();
}
сумму считал, а вот количество:

C
1
2
3
4
5
6
7
8
9
10
11
#include <string>    //для printf()
#include <conio.h>  //для getch()
int main(){
    char s[20]="abdfgh123ert";
    int i,S=0;
    for(i=0;s[i]!=0;i++)
        if(s[i]>=48&&s[i]<=57)
            S++
    printf("%d",S);
    getch();
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.04.2009, 03:25
Привет! Вот еще темы с ответами:

Простая задачка: Распаковка строки - C++
Задача D «Распаковка строчки» Будем рассматривать только строчки, состоящие из заглавных латинских букв. Например, рассмотрим...

Задачка с расщеплением строки. Ошибка отладки - C++
// Ch5_05.cpp // Напишите функцию, которая, получив строку, состоящую из слов, // разделенных пробелами, возвращает первое слово;...

Задачка на строки.Дана строка, состоящая из слов - C++
Дана строка, состоящая из слов (словом считать группу символов, начинающуюся и заканчивающуюся пробелом, или знаками препинания). Вывести...

Задачка со строками: вывести строки в обратном порядке - C++
Привет!!! Немогу написать прогу, которая выводит строки в обратном порядке!! Помогите!!! ((((((


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

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

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