Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
schecter6661
0 / 0 / 2
Регистрация: 28.06.2014
Сообщений: 8
#1

Посчитать количество символов без пробелов в каждом предложении - C++

17.03.2015, 18:20. Просмотров 533. Ответов 4
Метки нет (Все метки)

Здравствуйте!
Получила задание посчитать количество предложений в строке и в каждом предложении посчитать количество символов, всё считается, только нужно игнорировать пробелы, но у меня не получается(
http://www.cyberforum.ru/cpp-beginners/thread1351825.html

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
#include <iostream>
using namespace std;
const int size = 100;
void String (char *text);
int main()
{
char text[size] = "";
cout << "Enter your text:\n";
cin.clear();
cin.sync();
cin.getline (text, size);
String(text);
cin.get();
cin.get();
return 0;
}
 
void String (char *text)
{
    int sentence = 0;
    int i = 0, j = 0, mas[j];
    mas[0] = -1;
    while (text[i]!= '\0')
        {
            mas[j]++;
            if(text[i] == '.')
                {
                   sentence++;
                   j++;
                   mas[j] = -2;
                }
            i++;
        }
    cout << "\nThere are " << sentence << " sentences.\n";
    for (int j = 0; j < sentence; j++)
    {
         cout << "In the "<< j+1 << " sentence there are " << mas[j] << " symbols.\n";
    }
}
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.03.2015, 18:20
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Посчитать количество символов без пробелов в каждом предложении (C++):

Нужно вывести количество (цифрой) символов без пробелов
#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;string.h&gt; #include...

Функция, определяющая количество символов в строке без учета пробелов
#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;string.h&gt; #include...

Дан текстовый файл. Вывести на экран количество предложений в нём и количество слов в каждом предложении.
Помогите решить задачку пожалуйста. Дан текстовый файл. Вывести на экран...

Дан текстовый файл. Вывести на экран количество предложений в нём и количество слов в каждом предложении
Помогите пожалуйста решить задачку, буду очень благодарен. Дан текстовый файл....

Определить в каждом предложении текста колличество символов, отличных от букв и пробела
Помогите пожалуйста решить задачу!!! С помощью текстового редактора создать...

4
ValeryS
Модератор
7124 / 5392 / 669
Регистрация: 14.02.2011
Сообщений: 18,208
17.03.2015, 18:26 #2
Цитата Сообщение от schecter6661 Посмотреть сообщение
mas[j]++;
я так понял ты здесь символы подсчитываешь?
например так
C
1
2
if(text[i]!=' ')
 mas[j]++;
Добавлено через 36 секунд
Цитата Сообщение от schecter6661 Посмотреть сообщение
mas[j] = -2;
почему -2?
0
schecter6661
0 / 0 / 2
Регистрация: 28.06.2014
Сообщений: 8
17.03.2015, 18:57  [ТС] #3
Чтобы не учитывались точка и пробел после неё в каждом предложении
Но баг в том, что если этот пробел не ставить, то считается на 1 символ меньше
0
ValeryS
Модератор
7124 / 5392 / 669
Регистрация: 14.02.2011
Сообщений: 18,208
17.03.2015, 19:06 #4
Лучший ответ Сообщение было отмечено schecter6661 как решение

Решение

ты не учитываешь что предложения заканчиваются не только точкой
я бы переписал так
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    while (text[i]!= '\0')
        {
            switch(text[i])
             {
             case '.':
             case '!':
             case '?':
                   sentence++;
                   j++;
                   mas[j] = 0;
               break;
             case ' ':
             case ',':
               break;
            default:
               mas[j]++;
              }
            i++;
        }
0
schecter6661
0 / 0 / 2
Регистрация: 28.06.2014
Сообщений: 8
17.03.2015, 19:19  [ТС] #5
О, вот это заработало, спасибо огромное!
0
17.03.2015, 19:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.03.2015, 19:19
Привет! Вот еще темы с решениями:

Посчитать количество пробелов в тексте
Помогите c задачей вот написал код,а он из за строки cout&lt;&lt;k&lt;&lt;endl; выкидывает...

Посчитать количество пробелов в строке
Посчитать количество пробелов в строке

Найти в предложении количество слов, после которых стоит несколько пробелов и удалить их
Ребята помогите я на экзамене) Все очень печально)

Посчитать количество слов в предложении
Доброго времени суток, помогите решить задачку C++ Ввести предложение(в...


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

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

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