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

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

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

Во введенном тексте подсчитать количество цифр - C++

19.06.2016, 16:08. Просмотров 230. Ответов 3
Метки нет (Все метки)

Задание звучит так - "Ввести с клавиатуры несколько строк, состоящих из латинских букв,
цифр и знаков препинания, признаком конца ввода считать строку, состоящую из слова «last».
Во введенном тексте подсчитать количество цифр.
Вывести текст на экран и отформатировать:
Каждая последующая строка должна содержать на одно слово больше: в
первой строке вывести одно слово, во второй – два и т.д."

После ввода строки и нажатия "Enter" прога мгновенно закрывается, не выдавая никакого результата.

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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#include <stdio.h>
#include <ctime>
#include <Windows.h>
#include <clocale>
#include <string>
#include <vector>
#include <iostream>
using namespace std;
 
 
int main(int argc, CHAR* argv[])
{
    vector<string> a; //массив из строк
    string test;
    int amount = 0; //Колво цифр
    int space = 0; // количество пробелов
    int required_space = 1; //колчество пробелов нужное для переноса
    string fat; // строка в которую запихиваем все сроки через пробел
 
 
    cout << "Input strokis:" << endl;
    getline(cin, test); //считать строку с клавы
    a.push_back(test);  //Добавить строку в массив
    while (test == "last")
    { 
        getline(cin, test);
        a.push_back(test);
    }
    a.pop_back(); //Удалить строку last из массива
 
 
    for (int i = 0; i< a.size(); i++)
    { 
        for (int j = 0; j < a[i].length(); j++)
        {
            if (isdigit(a[i][j])) //Если обрабатываемый символ - цифра, amount++
                amount++;
        }
 
    }
    
    cout << "Tam koroche " << amount << " cifr" << endl;
 
    cout << endl << "Ishodniy massiv:";
 
    for (int i = 0; i < a.size(); i++)
    {
        cout << endl << a[i];
    }
    cout << endl << endl << "Result:" << endl;
    /*
     Из n-ной строки выводи n слов
    */
 
    for (int i = 0; i <  a.size();i++)
    {
    int spaces_amount = 0;
    cout << endl;
    for (int j=0;j<a[i].length();j++)
    {
    cout << a[i][j];
    if (a[i][j]==' ')
    {
    while(a[i][j]==' ')
    j++;
     spaces_amount++;
    if(spaces_amount == i + 1)
    break;
    }
    }
    }
 
 
 
    for (int i = 0; i < a.size(); i++)
    {
        fat.append(a[i]);
        fat.append(" "); 
    }
 
 
 
    for (int i = 0; i< fat.length(); i++) 
    {
        if (fat[i] == ' ') 
        {
            while(fat[i]==' ')i++;
            space++;
            cout << " ";
            if (space == required_space)
            {
                cout << "\n";
                space = 0;
                required_space++;
                i++;
 
            }
        }
        cout << fat[i];
    }
 
 
 
    cout << endl;
    system("payse");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.06.2016, 16:08     Во введенном тексте подсчитать количество цифр
Посмотрите здесь:

C++ Как подсчитать количество слов в конкретном тексте, а не во введенном с клавиатуры
C++ Дан текст произвольной длины, оканчивающийся точкой с запятой. Подсчитать количество цифр в тексте
Подсчитать количество цифр в заданном тексте C++
Подсчитать количество строк в введенном тексте C++
C++ Подсчитать количество цифр в тексте, записанного в файле.
C++ В созданном массиве строк, подсчитать в тексте количество слов, в которых нету цифр
C++ Подсчитать количество слов во введенном тексте
C++ Подсчитать количество четных и нечетных цифр во введенном числе в процентном отношении (do while)
Подсчитать количество предложений во введенном тексте C++
C++ Подсчитать количество слов во введенном предложении
Посчитать количество 7-ок (цифр 7) в введенном числе C++
C++ Подсчитать количество предложений во введенном тексте

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
_Dimon_
1385 / 545 / 85
Регистрация: 31.10.2011
Сообщений: 1,920
19.06.2016, 16:39     Во введенном тексте подсчитать количество цифр #2
Цитата Сообщение от Hitaatmaa Посмотреть сообщение
прога мгновенно закрывается
нужно
C++
1
system("pause");
Добавлено через 9 минут
и еще замени на
C++
1
2
3
4
5
6
7
8
9
cout << "Input strokis:" << endl;
    //getline(cin, test); //считать строку с клавы
    //a.push_back(test);  //Добавить строку в массив
    while (test != "last")
    {
        getline(cin, test);
        a.push_back(test);
    }
    a.pop_back(); //Удалить строку last из массива
Hitaatmaa
0 / 0 / 0
Регистрация: 19.06.2016
Сообщений: 2
19.06.2016, 20:34  [ТС]     Во введенном тексте подсчитать количество цифр #3
Исправление привело к созданию этой ошибки -
Миниатюры
Во введенном тексте подсчитать количество цифр  
_Dimon_
1385 / 545 / 85
Регистрация: 31.10.2011
Сообщений: 1,920
20.06.2016, 00:11     Во введенном тексте подсчитать количество цифр #4
Цитата Сообщение от Hitaatmaa Посмотреть сообщение
Исправление привело к созданию этой ошибки
Если у тебя VC, то вопрос не ко мне.
У меня это работает (Builder XE7), без исправления всегда было бы 0 цифр, что не странно.
Эту программку можно написать и по-проще, но для какой-нибудь лабы и так сойдет,
главное понимать, что где происходит
Yandex
Объявления
20.06.2016, 00:11     Во введенном тексте подсчитать количество цифр
Ответ Создать тему
Опции темы

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