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

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

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

Разделение выводимых цифр пробелом. - C++

22.11.2012, 19:54. Просмотров 714. Ответов 14
Метки нет (Все метки)

Ребята помогите решить не большую проблемку. Только прошу камнями не бросайтесь так как я начинающий программист. Задача состоит в том что бы в тексте найти цифры и потом их вывести, но проблемка у меня сложилась в том что эти цифры все идут в одной строке, а мне нужно что бы каждая отдельная целая цифра была отделена пробелом ниже привожу код
P.S. чтение веду из файла, потом результат пишу в другой файл
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
#include<iostream>
#include<conio.h>
#include <string>
#include <ctype.h>
using namespace std;
void main()
{
    const int max = 100000;
    char arr[max];
    char number [max];
    arr[0]=0; number [0]=0;
    int count = 0;
    int c=0;
    while ((c=getchar())!=EOF)
    {
        if(isdigit(c))
        {
            number[count++]=c;
        }
        else
        {
            number[count]=0;
            strcpy(arr,number);
        }
    }
    cout<<arr;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2012, 19:54     Разделение выводимых цифр пробелом.
Посмотрите здесь:

Разделение выводимых данных - C++
Доброго времени суток, есть маленькая проблема и соответственно с ней вопрос.Вот программа которая расшифровывает текст, закодированный...

Последовательности следующих друг за другом пробелов заменить одним пробелом (т.е. удалить все пробелы, следующие непосредственно за пробелом) - C++
Последовательности следующих друг за другом пробелов заменить одним пробелом (т.е. удалить все пробелы, следующие непосредственно за...

Сортировка выводимых данных в алфавитном порядке - C++
у меня вот такое задание Дан файл, состоящий из записей, которые содержат следующие поля: - фамилия, имя; - знак Зодиака; - дата...

Тип выводимых данных. abs() и fabs() - C++
Здравствуйте, столкнулся с такой проблей при выводе через cout данных типа double выводится почемуто только 2 знака после запятой(хотя их...

Удалить первую и последнюю букву из выводимых слов - C++
Нужно удалить первую и последнюю букву из выводимых слов, помогите пожалуйста. #include &lt;iostream&gt; using namespace std; int...

MPI. Ошибка в выводимых данных. (Код присутствует) - C++
Доброе время суток. Программа должна пересылать данные от 3 процесса к 0, и от 0 к 3. Необхожимо использовать в работе функции передачи...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Buildog
40 / 40 / 2
Регистрация: 29.04.2012
Сообщений: 185
22.11.2012, 19:56     Разделение выводимых цифр пробелом. #2
У тебя в выводе цифр проблема? Если я правильно понял, то cout<<arr<" ";
Adam_Ake
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 9
22.11.2012, 20:02     Разделение выводимых цифр пробелом. #3
А лучше: for (int i=0; i<max; i++) { cout << arr[i] << " ";}
Плюс, пожалуйста =)
Buildog
40 / 40 / 2
Регистрация: 29.04.2012
Сообщений: 185
22.11.2012, 20:04     Разделение выводимых цифр пробелом. #4
Ааа да, недоглядел чуть, согласен с циклом
Vasjatko
0 / 0 / 0
Регистрация: 04.09.2012
Сообщений: 12
22.11.2012, 20:05  [ТС]     Разделение выводимых цифр пробелом. #5
Цитата Сообщение от Adam_Ake Посмотреть сообщение
А лучше: for (int i=0; i<max; i++) { cout << arr[i] << " ";}
Плюс, пожалуйста =)
У тебя получается что каждая цифра отдельно, а мне нужно что бы число, например, 100 и 34 были роздельно
Adam_Ake
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 9
22.11.2012, 20:06     Разделение выводимых цифр пробелом. #6
Нет, этот цикл выводит каждый ЭЛЕМЕНТ массива через пробел!
Buildog
40 / 40 / 2
Регистрация: 29.04.2012
Сообщений: 185
22.11.2012, 20:10     Разделение выводимых цифр пробелом. #7
Вопрос, а как ты поймешь, где заканчивается одно число и начинается второе?

Добавлено через 1 минуту
Цитата Сообщение от Adam_Ake Посмотреть сообщение
Нет, этот цикл выводит каждый ЭЛЕМЕНТ массива через пробел!
Ну так это надо смотреть считывание из файла, может у него в считывании стоит условие, что то вроде "если элемент цифра, то считать в массив" тогда у него в массиве, каждый элемент это отдельная цифра
Adam_Ake
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 9
22.11.2012, 20:12     Разделение выводимых цифр пробелом. #8
Цикл гуляет не по цифрам, а по элементам массива, т.е. отдельно рассматривает каждую ячейку массива, выводит число внутри него на экран, ставит пробел и переходит в следующую по счёту ячейку и с ней проделывает то же самое
Buildog
40 / 40 / 2
Регистрация: 29.04.2012
Сообщений: 185
22.11.2012, 20:16     Разделение выводимых цифр пробелом. #9
Я знаю, где гуляет цикл, но у него может число 100 в массив записывается, как [1][0][0]
Adam_Ake
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 9
22.11.2012, 20:17     Разделение выводимых цифр пробелом. #10
А если нужна ещё проверка на содержимое ячеки,( т.е. смотреть число там или слово) то нужно добавить небольшую проверку... Все числа в каких пределах?
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.11.2012, 21:17     Разделение выводимых цифр пробелом. #11
Цитата Сообщение от Vasjatko Посмотреть сообщение
У тебя получается что каждая цифра отдельно, а мне нужно что бы число, например, 100 и 34 были роздельно
Вы в задании разберитесь. В первом посте пишите:
Цитата Сообщение от Vasjatko Посмотреть сообщение
Задача состоит в том что бы в тексте найти цифры и потом их вывести
Цифры - это цифры, числа - это числа. Что нужно вывести? И как текст в файле выглядит?

Добавлено через 1 минуту
И код, в первом посте, к чему относится? Где там чтение из файла?
Adam_Ake
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 9
22.11.2012, 21:53     Разделение выводимых цифр пробелом. #12
Кажись догнал... Если у тебя есть простой текстовый файл с числами, ты создал массив, где каждому символу из текста присвоена своя ячейка, и теперь пытаешься вычленить из этого самого массива цифры, составить из них числа исходного файла и поставить между ними пробел, то я смогу помочь =)
BlackVoiN69
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 24
22.11.2012, 22:28     Разделение выводимых цифр пробелом. #13
Vasjatko скажите правильно ли я понял задание есть какие буквы и среди них цифры и нужно вывести только цифры через пробел?
Vasjatko
0 / 0 / 0
Регистрация: 04.09.2012
Сообщений: 12
23.11.2012, 14:20  [ТС]     Разделение выводимых цифр пробелом. #14
Цитата Сообщение от Adam_Ake Посмотреть сообщение
Кажись догнал... Если у тебя есть простой текстовый файл с числами, ты создал массив, где каждому символу из текста присвоена своя ячейка, и теперь пытаешься вычленить из этого самого массива цифры, составить из них числа исходного файла и поставить между ними пробел, то я смогу помочь =)
Да Вы правильно поняли.

Добавлено через 6 минут
Цитата Сообщение от BlackVoiN69 Посмотреть сообщение
Vasjatko скажите правильно ли я понял задание есть какие буквы и среди них цифры и нужно вывести только цифры через пробел?
Да есть текст в нем есть строки состоящие из слов и чисел, мне нужно что бы программа в конечном результате выводила числа отдельно друг от друга сейчас они выводятся в одну строку без пробелов
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2012, 01:02     Разделение выводимых цифр пробелом.
Еще ссылки по теме:

Количество выводимых строк в консоли (размер буфера экрана) - C++
Такая проблема - по умолчанию в Windows размер &quot;буфера экрана&quot; для консоли - 300 строк. Я вывожу гораздо больше (около 1200 строк)...

Спецификатор %n в Printf() - не получается посчитать число выводимых символов - C++
Уффф... Набираю сообщение второй раз из-за сбоя. Поэтому буду краток :) Пишу программу по заданию из учебнка, используя Dev-C++ 5.11. ...

Разброс значений, выводимых компилятором VS2013 и онлайн-компиляторов - C++
Добрый день, подскажите, в чем может быть проблема. Задача: Написать программу, которая считывает со стандартного входного потока...

Проблемы с пробелом - C++
Дан код на Си: #include&lt;stdio.h&gt; #include&lt;string.h&gt; void main() { char s; printf(&quot;Vvedite stroky:\n&quot;); scanf(&quot;%s&quot;,s); ...


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

Или воспользуйтесь поиском по форуму:
Vasjatko
0 / 0 / 0
Регистрация: 04.09.2012
Сообщений: 12
27.11.2012, 01:02  [ТС]     Разделение выводимых цифр пробелом. #15
Спасибо всем кто пытался помочь, я решил данную задачу вот решение

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
#include <iostream>
#include <iomanip>
#include <string.h>
using namespace std;
void main()
{
    const int max = 1000;
    char arr[max], word [max];
    arr[0]=0; word[0]=0;
    int cword = 0;
    int c=0;
    while ((c=getchar())!=EOF)
    {
        if(isdigit(c))
        {
            word[cword++]=c;
        }
        else
        {
            if(cword>0)
            {
                word[cword]=0;
                if(arr[0]!=0)
                   strcat(arr," ");
                strcat(arr,word);
                cword=0;
                word[cword]=0;
 
            }
 
        }
    }
    cout<<arr;
}
Yandex
Объявления
27.11.2012, 01:02     Разделение выводимых цифр пробелом.
Ответ Создать тему
Опции темы

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