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

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

Восстановить пароль Регистрация
 
JerryJackson
50 / 6 / 1
Регистрация: 15.07.2010
Сообщений: 112
15.11.2010, 20:58     Подсчитать количество слов оканчмвающихся на символ #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++

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

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


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

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