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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.87
vetalxxx
1 / 1 / 0
Регистрация: 22.11.2009
Сообщений: 55
#1

Количество введеных цифр в консоли - C++

20.02.2010, 21:16. Просмотров 1961. Ответов 25
Метки нет (Все метки)

Привет всем, у меня возникла проблема с консолью
мне нужно чтоб после ввода цифр через пробел и нажатия ENTER считать количество этих цифр, может кто знает какую функцию.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.02.2010, 21:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Количество введеных цифр в консоли (C++):

дано натуральное число N. Определить,во сколько раз произведение цифр числа больше суммы цифр.Найти количество чётных цифр в записи числа!! - C++
дано натуральное число N. Определить,во сколько раз произведение цифр числа больше суммы цифр.Найти количество чётных цифр в записи числа!!...

Пользователь вводит строку. Определить количество букв (рус eng), количество цифр и количество остальных - C++
в чем проблема не пойму работает на английских буквах на цифрах и остальные символы вроде считает а вот русские не хочет их забивает как...

Как изменить размер цифр,букв в консоли С++ - C++
Здравствуйте,как изменить размер цифр,букв в консоли С++? Нужно цифры от 1 до 15 сделать большими,например как шрифт 23,24 в ворде....

Определить количество цифр в числе n и сумму всех его цифр - C++
Дано натуральное n , определить количество цифр в числе n и сумму всех его цифр. Значение n ввести с клавиатуры. Добавлено через...

Функция вычисляющая количество цифр числа и сумму этих цифр - C++
Не могу найти ошибку. Помогите пожалуйста. Дана последовательность n натуральных чисел. Для каждого числа вычислить количество его цифр и...

Рекурсия: количество цифр в числе, сумма цифр и реверс числа - C++
Вот задание: Написать программу, которая запрашивает у пользователя целое число, на экран выводит сколько цифр в числе, их сумму и...

25
vetalxxx
1 / 1 / 0
Регистрация: 22.11.2009
Сообщений: 55
24.02.2010, 20:16  [ТС] #16
Пытаюсь организовать запись в масcив так
C++
1
2
3
4
5
6
    string s;
    getline(cin,s);
    stringstream tmp;
    tmp << s;
    int top = 0;
    while (tmp >> s) if (isdigit(s)) ++top &&  array[s] ;
но вылезает ошибка может кто знает как от нее избавится
C++
1
Error   2   error C2677: binary '[' : no global operator found which takes type 'std::string' (or there is no acceptable conversion)    c:\users\user\documents\visual studio 2008\projects\sort\sort\sort.cpp  130 Sort
0
M128K145
Эксперт С++
8297 / 3517 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
24.02.2010, 21:23 #17
C++
1
++top &&  array[s]
что вы хотели этим сделать и кто такой array?
0
vetalxxx
1 / 1 / 0
Регистрация: 22.11.2009
Сообщений: 55
24.02.2010, 21:57  [ТС] #18
При таком коде
C++
1
while (tmp >> s) if (isdigit(s)) ++top &&  cout << "You have " << s << endl ;
программа делает
http://ipicture.net.ua/pictures/1b5cf31b41517c78d14ae9890a3fc940.png

вот я и хочу чтоб вместо
C++
1
cout << "You have " << s << endl
числа заносились в массив
C++
1
array[s]
0
mirso
525 / 343 / 17
Регистрация: 05.04.2009
Сообщений: 709
24.02.2010, 23:32 #19
vetalxxx,
Цитата Сообщение от vetalxxx Посмотреть сообщение
вместо
Код C++
cout << "You have " << s << endl
числа заносились в массив
можно в вектор
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    std::vector<int> v;
    std::string s;
 
    std::getline ( std::cin, s );
    std::stringstream tmp ( s );
    size_t n = 0;
 
    while ( tmp >> s )
    {
        if ( isdigit(s) )
        {
            v.push_back( std::atoi(s.c_str()) );
            ++n;
        }
    }
    std::cout << "You have " << n << " digits" << std::endl;
 
    for ( std::size_t i = 0; i < v.size(); ++i )
    std::cout << " array[" << i << "] = " << v[i] << std::endl;
1
vetalxxx
1 / 1 / 0
Регистрация: 22.11.2009
Сообщений: 55
25.02.2010, 01:44  [ТС] #20
Скажите пожалуйста, почему в таком виде программа сортирует
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
// cor.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
#include <sstream>
#include <string>
#include <vector>
using namespace std;
//#define x 1000
int isdigit(string &s)
{
    for (int i = 0; i < s.size(); ++i) if (!isdigit(s[i])) return 0;
    return 1;
}
 
void Out(int col, vector<int> mas)                            
{
   for(int i = 0 ; i < col ; i++) 
     cout << mas[i] <<" ";
   cout << endl;  
}
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    
    vector<int> v;
    string s;
    getline ( cin, s );
    stringstream tmp ( s );
    size_t n = 0;
    while ( tmp >> s )
    {
        if ( isdigit(s) )
        {
            v.push_back( atoi(s.c_str()) );
            ++n;
        }
    }
 
    _gettch();
    int i, j;
    for(i = 0 ; i < n ; i++) { 
       for(j = 0 ; j < n - i - 1 ; j++) {  
           if(v[j] > v[j+1]) {           
              int tmp = v[j]; v[j] = v[j+1] ; v[j+1] = tmp; 
           }
        }
    }
 
 
    _gettch();
    Out(n,v);
    _gettch();
 
}
http://ipicture.net.ua/pictures/a154fd330d6c34b368fb24eb3daca1b0.png


а в таком не хочет сортировать вроде все правильно написал

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
// cor.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
#include <sstream>
#include <string>
#include <vector>
using namespace std;
//#define x 1000
int isdigit(string &s)
{
    for (int i = 0; i < s.size(); ++i) if (!isdigit(s[i])) return 0;
    return 1;
}
 
void Bubble_sort(int col, vector<int> mas )
{
    int i, j;
    for(i = 0 ; i < col ; i++) { 
       for(j = 0 ; j < col - i - 1 ; j++) {  
           if(mas[j] > mas[j+1]) {           
              int tmp = mas[j]; mas[j] = mas[j+1] ; mas[j+1] = tmp; 
           }
        }
    }
}
 
void Out(int col, vector<int> mas)                            
{
   for(int i = 0 ; i < col ; i++) 
     cout << mas[i] <<" ";
   cout << endl;  
}
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    
    vector<int> v;
    string s;
    getline ( cin, s );
    stringstream tmp ( s );
    size_t n = 0;
    while ( tmp >> s )
    {
        if ( isdigit(s) )
        {
            v.push_back( atoi(s.c_str()) );
            ++n;
        }
    }
 
    _gettch();
    Bubble_sort(n,v);
    Out(n, v);
    _gettch();
 
}
http://ipicture.net.ua/pictures/821bbb8d9ef6ca156f68527c5f47400a.png[/QUOTE]
0
easybudda
Модератор
Эксперт CЭксперт С++
9695 / 5645 / 963
Регистрация: 25.07.2009
Сообщений: 10,849
25.02.2010, 02:04 #21
vetalxxx, делать Вам нечего - vector пузырьками сортировать?
C++
1
2
3
4
5
6
#include <functional>
#include <algorithm>
...
std::sort(v.begin(), v.end()); // по возрастанию
std::sort(v.begin(), v.end(), std::greater<int>()); // по убыванию
...
1
vetalxxx
1 / 1 / 0
Регистрация: 22.11.2009
Сообщений: 55
25.02.2010, 02:14  [ТС] #22
Цитата Сообщение от easybudda Посмотреть сообщение
vetalxxx, делать Вам нечего - vector пузырьками сортировать?
C++
1
2
3
4
5
6
#include <functional>
#include <algorithm>
...
std::sort(v.begin(), v.end()); // по возрастанию
std::sort(v.begin(), v.end(), std::greater<int>()); // по убыванию
...
у меня нет другого выхода так как мне нужно чтоб все алгоритмы сортировки (пузырки, быстрая сортировка.....) были собраны в одну консольную программу
0
mirso
525 / 343 / 17
Регистрация: 05.04.2009
Сообщений: 709
25.02.2010, 08:05 #23
Цитата Сообщение от vetalxxx Посмотреть сообщение
почему в таком виде программа сортирует
Цитата Сообщение от vetalxxx Посмотреть сообщение
а в таком не хочет сортировать
void Bubble_sort(int col, vector<int> &mas )
1
vetalxxx
1 / 1 / 0
Регистрация: 22.11.2009
Сообщений: 55
25.02.2010, 11:13  [ТС] #24
Цитата Сообщение от mirso Посмотреть сообщение
void Bubble_sort(int col, vector<int> &mas )
Спасибо, теперь работает
0
vetalxxx
1 / 1 / 0
Регистрация: 22.11.2009
Сообщений: 55
27.02.2010, 23:43  [ТС] #25
Привет всем, вот сделал консольную программу с разными сортировками на c++, кто хочет качайте, но у меня проблема программу нужно переделать на c#, подскажите пожалуйста как после введения цифр и нажатия ENTER считать их количество и занести в массив на C#
0
Вложения
Тип файла: rar cor.rar (3.16 Мб, 9 просмотров)
AnonymC
1173 / 455 / 28
Регистрация: 23.06.2009
Сообщений: 6,341
Завершенные тесты: 1
28.02.2010, 16:46 #26
если через пробел то
C++
1
2
3
4
5
6
7
8
9
int c=0;
int n=0;
int x=0;
 
while((c=getchar())!=EOF){
if(c==' ')++n;
else ++x;
}
cout<<"цифр-"<<x<<"probel-"<<n;
1
28.02.2010, 16:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.02.2010, 16:46
Привет! Вот еще темы с ответами:

Напишите программу, выводящую на экран количество цифр в этом числе и сумму этих цифр - C++
я начинающий! помогите! мне на екзам! Дано натуральное число а (a&lt;100). Напишите программу, выводящую на экран количество цифр в этом...

С клавиатуры вводится положительное натуральное число. Определить количество цифр в числе (сумму цифр) - C++
С клавиатуры вводится положительное натуральное число. Определить количество цифр в числе (сумму цифр)

Запрет ввода любых символов кроме цифр в консоли - C++
Ребята подскажите пожалуйста можно ли как-то разрешать ввод в консоль только цифр. Я делаю проверку или с помощью isdigit() или через...

Дана последовательность n натуральных чисел. Для каждого числа вычислить количество его цифр и сумму этих цифр. Вывести на экран каждое число, количес - C++
Дана последовательность n натуральных чисел. Для каждого числа вычислить количество его цифр и сумму этих цифр. Вывести на экран каждое...


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

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

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