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

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

Войти
Регистрация
Восстановить пароль
 
JerryJackson
50 / 6 / 1
Регистрация: 15.07.2010
Сообщений: 112
#1

Подсчитать количество слов оканчмвающихся на символ - C++

15.11.2010, 20:58. Просмотров 719. Ответов 1
Метки нет (Все метки)

Народ подскажите
Написал программу функция подсчета слов оканчивающихся на символ работает , но при изменении условия программа счатает пробелы, хоят должна считать только слова оканчивающиеся на символ....


Написатьпрограммуна языке C++, реализующиюперегруженнуюфункциюxcount, получа-
ющую в качестве аргумента или массив целых чисел, или символьную строку, и возвраща-
ющую количество подсчитанных элементов. Признаком конца числового массива считать
нулевой элемент. Функция не должна изменять переденные ей массивы.
Для массива целых чисел функция должна подсчитать количество последовательно-
стей из нечётных чисел, а для символьной строки – количество слов, которые оканчиваются
не на пробельный символ (конец строки также считать не пробельным символом).
Пример:
[ 12 7 5 54 67 3 3 4 1 0 ] - 2
"Привет! nil laba_12 chaos? UFO" - 3
В функции main следует подготовить исходные данные, вызвать оба варианта функ-
ции, а затем вывести исходные данные и результаты. Предусмотреть меры против аварий-
ного завершения программы из-за неправильно указанных аргументов.



когда во второй строке "Привет! ... " допустим после Привет! или любого другого слова ставиш много пробелов то результа равен не 3 а уже 15 (программа плюсует 12 пробелов и считает их как символы)


Заранее спасибо


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
48
49
50
51
52
53
54
55
#include "stdafx.h"
#include <iostream>
using namespace std;
 
int xcount(const char*);
int xcount(const int*);
 
int main()
{
        char str1[]="Привет! nil laba_12 chaos? UFO";
        int str2[]={12,7,5,54,67,3,3,4,1,0};
 
        cout << "Привет! nil laba_12 chaos? UFO = " << xcount(str1) << endl;
        cout << "12,7,5,54,67,3,3,4,1,0 = " << xcount(str2) << endl;
 
        system("pause");
        return 0;
}
 
int xcount(const char* a)
{
        int counter=0;
        while(*a!='\0') {
                if((*a==' ')&&(isalpha(*(a-1))==0)) 
                    counter++;
                ++a;    //!
            
            
                
        }
 
        return counter;
}
int xcount(const int* b)
{
        int counter1=0;
                int n=0;
        while(*b!=0) 
        {       
                        
                while(*b%2!=0&&*(b+1)%2!=0&&*(b+1)!=0)
                                {       
                                   counter1++;
                                   ++b;
                                }
                if(counter1>0) 
                    n++;
 
                                counter1=0;
                                if(*b==0)
                                    break;
                ++b;
        }
        return n;
}

Функция подсета слов
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int xcount(const char* a)
{
        int counter=0;
        while(*a!='\0') {
                if((*a==' ')&&(isalpha(*(a-1))==0)) 
                    counter++;
                ++a;    //!
            
            
                
        }
 
        return counter;
Добавлено через 1 час 4 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int xcount(const char* a)
{
        int counter=0;
        while(*a!='\0') {
                if((*a==' ')&&(isalpha(*(a-1))==0)) 
                    counter++;
                ++a;    //!
            
            
                
        }
 
        return counter;
Добавлено через 34 секунды
как сделать чтобы считала только символы
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2010, 20:58     Подсчитать количество слов оканчмвающихся на символ
Посмотрите здесь:

C++ Подсчитать количество слов в строке
Подсчитать количество слов. C++
Подсчитать количество слов. C++
C++ Определить количество слов, которые содержат введенный символ
подсчитать количество слов C++
C++ Подсчитать количество слов в строке
C++ подсчитать количество слов
C++ Определить количество слов в строке, содержащих заданный символ
Подсчитать количество слов, содержащих введенный символ C++
Подсчитать в строке количество слов, которые заканчиваются на заданный символ C++
C++ Строка: Подсчитать количество слов, что заканчиваются на заданый символ.
C++ Подсчитать количество символов 2 и заменить их на символ 5

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
JerryJackson
50 / 6 / 1
Регистрация: 15.07.2010
Сообщений: 112
15.11.2010, 21:02  [ТС]     Подсчитать количество слов оканчмвающихся на символ #2
Безымянный результа выполнения когда ставиш много пробелов


Безымянный9 результа как должно быть, даже когда ставиш кучу пробелов
Миниатюры
Подсчитать количество слов оканчмвающихся на символ   Подсчитать количество слов оканчмвающихся на символ  
Yandex
Объявления
15.11.2010, 21:02     Подсчитать количество слов оканчмвающихся на символ
Ответ Создать тему
Опции темы

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