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

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

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

разделить числа, и записать их как массив - C++

01.05.2010, 18:15. Просмотров 763. Ответов 6
Метки нет (Все метки)

Добрый вечер!
Подскажите пожалуйста, как можно, имея, например, файл с последовательностью чисел 2 7 4 3, разделить числа, и записать их как массив.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.05.2010, 18:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос разделить числа, и записать их как массив (C++):

Разделить строку AnsiString на слова и записать их в массив! - C++
Доброго времени суток, что не так? char lecs; for (i=0;i<1;i++) { String str = A.NameBook; char *pch; ...

Разделить строку по пробелам и записать полученные части в массив - C++
Здравствуйте. Подскажите, есть ли способ разделить строку по пробелам и записать полученные части в массив (по сути, аналог Split() в c#)?

Как записать числа в массив? - C++
Как вставить единицу и 0 в массив,а потом перевернуть числа справа - налево ? ( перевод в двоичную систему) int n; cin>>n; while...

как в массив записать случайные числа но чтобы не повторялись - C++
Как в массив записать случайные числа но чтобы не повторялись?? Пишу программу тесты никак не получается выводить вопроси случайно без...

Как массив цифр записать в виде одного числа? - C++
Как массив цифр записать в виде одного числа? Например: есть массив а=2,a=4,a=5,a=9, а нужно записать просто одним числом 2459.

Ввести в программу строку (числа, латиница), считать только числа, записать числа в массив - C++
Нужна помощь! Срочно! Нужно ввести в программу строку (числа, латиница), считать только числа, записать числа в массив. Помогите,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Hell Knight
230 / 60 / 3
Регистрация: 11.03.2010
Сообщений: 290
01.05.2010, 18:24 #2
ну если у вас числа сплошняком идут, то можно просто читать их по байтово и записывать в массив...
0
Eshkroft
0 / 0 / 0
Регистрация: 01.05.2010
Сообщений: 5
01.05.2010, 18:27  [ТС] #3
согласен, но числа идут через пробел, и если число будет, например, 37 то при побайтовом чтении их "получится" 2
0
Hell Knight
230 / 60 / 3
Регистрация: 11.03.2010
Сообщений: 290
01.05.2010, 18:32 #4
в таком случае создаем временно массив, ну думаю 4-5 элементами можно вполне обойтись...
нужно не забвать его обнулять!
читаем в него данные до тех пор пока не наткнемся на пробел...
преобразуем этот символьный массив в число и заносим его в наш массив
перескакиваем через пробел( ну например сканированием...)
и само собой проверяем всегда о том не достигли мы конца файла...
0
Eshkroft
0 / 0 / 0
Регистрация: 01.05.2010
Сообщений: 5
01.05.2010, 18:37  [ТС] #5
спасибо, попробую разобраться.
0
Eshkroft
0 / 0 / 0
Регистрация: 01.05.2010
Сообщений: 5
03.05.2010, 12:50  [ТС] #6
не разобрался

Вот текст задачи...

"Задан файл целых чисел, создать новый файл, в котором каждому числу исходного файла соответсвует строка из звездочек, причем число звездочек равно числу из исходного кода".

...допустим, что в файле есть однозначные, двухзначные, и трехзначные цифры идущие через пробел...

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
#include<stdio.h>
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
void main()
    {
    FILE *z, *x, *m;
    char a[50], b[5], n[4];
    int i, h, k=0;
    z=fopen("default.txt","r");
    if (z==NULL)
        {
        printf("\nOsibka, faila ne sushetvuet");
        }
    else
        {
        x=fopen("temp.txt","a+");
        while (fgets(a,50,z))
            {
            h=strlen(a);
            for (i=0; i<=h; i++)
                {
                                // сортируем цифры из исходного файла в новый, построчно
                if(a[i]>='0'&&a[i]<='9')
                    {
                                        //если находим число то пишем его в файл
                    b[0]=a[i];
                    fputs(b, x);
                                        //как бы флажок что бы не было пустых строк
                    k=1;     
                    }
                else
                    {
                    if (k==1)
                        {
                                                //если если длина числа закончилась то переходим на другую строку
                        fputs("\n", x);
                        k=0;
                        }
                    }
                }
            }
        fclose(x);
        x=fopen("temp.txt", "r");
        m=fopen("new.txt", "a+");
        while (fgets(n,4,x))
            {
            //тут я хотел сделать цикл на запись количества звездочек равное числу на строке  
            }
        }
    fclose(z);
    fclose(x);
    fclose(m);
    getchar();
    }
Как только не пробовал - никак не получается

PS: только начинаю изучать С++
PPS: Borland 3.11 DOS
0
Eshkroft
0 / 0 / 0
Регистрация: 01.05.2010
Сообщений: 5
13.05.2010, 18:07  [ТС] #7
всё ещё нужна помощь...

...или просто как из файла (допустим "0 5 17 4 29 40 11 47 2" ) сосчитать цифры и присвоить их массиву

заранее благодарен.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.05.2010, 18:07
Привет! Вот еще темы с ответами:

Разделить массив на два: числа больше пятнадцати и меньше - C++
Задание : задать 10 элементов (ввод с клавиатуры). Программа должна отсортировать их по возрастанию и числа от 15 до бесконечности отравить...

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

Как 1 массив разделить на 2? - C++
Помогите написать программу: Задан массив с количеством элементов N. Сформируйте два массива: в первый включите элементы исходного...

Записать числа в массив - C++
Всем привет. Никак не могу найти решение. Есть массив с определенным набором чисел, которую перезаписываем в другой массив, кроме элементов...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
13.05.2010, 18:07
Ответ Создать тему
Опции темы

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