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

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

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

бинарные файлы) - C++

15.12.2013, 16:30. Просмотров 180. Ответов 0
Метки нет (Все метки)

никак не могу добить(
Через Hex Editor проверяю, в первом файле - то что нужно, а второй вообще ничего нет.
Прошу помочь)
Всем добра
Задание:
Элементы бинарного файла Ф1 являются целыми числами, при чем 10 из них отрицательные, другие - больше нуля. Числа в хаотичном порядке. Создать файл Ф2, в котором записаны сначала 5 чисел больше нуля, потом меньше..
мне упростили задание: ввод с клавы любых 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
#include <iostream>
#include <ctime>
#include <conio.h>
#include <cstdlib>
#include <stdio.h>
#include <fstream>
using namespace std;
int main()
{
    FILE *f;
    FILE *f1;
    int c=0;//счётчик положительных чисел
    int d=0;//счётчик отрицательных чисел
    int size=20;
    int a[20];
    f=fopen("D:\\test.dat", "wb");//открываем бинарный файл для ввода
    for(int i = 0; i<size; ++i)
    {
            printf("%s%d%s\n","Enter element [",i,"]:");
            scanf("%d",&a[i]);//вводим  числа нашего будущего файла
            fwrite(&a, sizeof(int),1,f);//записываем в наш файл
    }
    cout << endl;
    f1=fopen("D:\\test1.dat", "wb");//открываем  второй бнар.файл
    while (fread(&a,sizeof(int), 1, f))//считуем числа с первого бинара
        {
    for(int i=0;i<size;i++)//пробежались по элементам
    {
        if(a[i]>0 && c<5)//если число больше нуля - с++, пока количество таких чисел не будет равно 5
        {
            c++;
            fwrite(&a, sizeof(int), 1, f1);//записываем во второй файл
        }
        if(a[i]<0 && d<5)//если число меньше нуля + d++, пока количество таких чисел не будет равно 5
        {
            d++;
            fwrite(&a, sizeof(int), 1, f1);//записывем во втрой  файл
        }
    fclose(f);
    fclose(f1);
    getch();
    return 0;
    }
    }
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2013, 16:30     бинарные файлы)
Посмотрите здесь:

Бинарные файлы - C++
1.Записать в файл N действительных чисел a1, a2, …,an. Организовать новый файл , элементы которого вычисляются по формуле:...

Бинарные файлы - C++
Прошу помочь с новыми задачками

Бинарные файлы в С++ - C++
У меня есть програмка которая находит наименьший общий делитель числа#include&lt;iostream&gt; using namespace std; int main() { int n; ...

Fstream и бинарные файлы - C++
вообщем вопрос такой.. как читать строки из бинарного файла, и как записывать в бинарный файл строки используя fstream, и можно ли...

Запись в бинарные файлы - C++
Подскажите пожалуйста, я собираюсь записать из текстового файла в бинарный текст. Но в одних случаях записывается сплошной строкой, в...

Строки и бинарные файлы - C++
Программа читает из бинарного файла и выводит содержимое на экран. Потом можно добавить 1 элемент в любую ячейку. Проблема в том, что...

Двоичные (бинарные ) файлы С++ - C++
Помогите, пожалуйста, переделать эту же программу (она рабочая) только для двоичного (бинарного ) файла Буду очень признателен за...

Fstream и бинарные файлы - C++
Необходимо скопировать картинку. Не знаю как сделать.

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

Бинарные файлы и структуры - C++
Доброго времени суток. Прошу ответить на пару вопросов: 1) Почему результат операции sizeof, применённый к структуре, не совпадает с...

Бинарные файлы данных - C++
Доброго времени суток, господа) извольте помочь мне с кодом):senor: Задание: Есть бинарный файл Ф1 с целыми числами:10 отрицательных...

Бинарные файлы. Чтение - C++
Дан бинарный файл, компонентами которого являются массивы действительных чисел. Вычислить для каждого массива число отрицательных...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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