С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 11
1

Создание и работа с бинарными файлами

15.12.2022, 19:52. Показов 513. Ответов 19
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. Нужна помощь. Надо создать на диске бинарный файл с реальными числами. Количество чисел неизвестно. Прочитав данные из файла, вычислить сумму элементов от начала файла до первого максимального элемента (одинаковых элементов с максимальным значением может быть несколько). Также найдите произведение элементов от последнего максимального элемента до конца файла. Спасибо
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.12.2022, 19:52
Ответы с готовыми решениями:

Работа с бинарными файлами
Хелпаните плз. Вот само задание. Матрицу А действительных чисел размерности M*N (M<N) и вектор...

Работа с бинарными файлами
Помогите решить проблему. Задача: создать файл записать в него 10 структур и закрыть, затем...

Работа с бинарными файлами
Задача такова : нужно записать созданные объекты класса в бинарный фал а затем прочитать их же из...

Работа с бинарными файлами
Написать программу для обработки информации о планшетах. Информация включает следующие данные: -...

19
1710 / 1110 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
15.12.2022, 20:15 2
Цитата Сообщение от Progmmmmer Посмотреть сообщение
файл с реальными числами
Чоткая математика.
Параграф 3: "Конкретные множества"

Вещественные шоль?

Добавлено через 1 минуту
Ладно, по существу:
Цитата Сообщение от Progmmmmer Посмотреть сообщение
создать на диске бинарный файл с реальными числами. Количество чисел неизвестно.
Это как? В смысле "неизвестно"? Рандомом чтоль количество накрутить?
0
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 11
15.12.2022, 20:30  [ТС] 3
Цитата Сообщение от Folian Посмотреть сообщение
Чоткая математика.
Параграф 3: "Конкретные множества"

Вещественные шоль?

Добавлено через 1 минуту
Ладно, по существу:
Это как? В смысле "неизвестно"? Рандомом чтоль количество накрутить?
В том плане, что чисел может быть сколько угодно. ну по крайней мере я понял так
0
1710 / 1110 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
15.12.2022, 21:00 4
Цитата Сообщение от Progmmmmer Посмотреть сообщение
В том плане, что чисел может быть сколько угодно. ну по крайней мере я понял так
Панятно. Создать файл неизвестного размера и забыть.

Ладна, короч эта штука читает бинарник с даблами в вектор:
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 <fstream>
#include <vector>
 
int main()
{
    std::vector<double> v;
    
    std::ifstream file("f", std::ios::binary | std::ios::ate);
    if(file.is_open())
    {
        auto size { file.tellg() };
        file.seekg(0);
        size_t chunks { size / sizeof(double) };
        v.resize(chunks);
        void* p { v.data() };
        file.read(static_cast<char*>(p), size);
 
        file.close();
    }
 
    for(auto x : v)
        std::cout << x << " ";
 
    return 0;
}
Файл сам запилишь?
0
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 11
15.12.2022, 21:04  [ТС] 5
вот сейчас работаю над файлом
0
1710 / 1110 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
15.12.2022, 21:19 6
Цитата Сообщение от Progmmmmer Посмотреть сообщение
вот сейчас работаю над файлом
и чо получаецо?
0
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 11
15.12.2022, 21:28  [ТС] 7
Цитата Сообщение от Folian Посмотреть сообщение
и чо получаецо?
#include<iostream>
#include<fstream>

using namespace std;

int main() {
int a=0, b;
ifstream is;
ofstream os;

os.open( "fail.bin", ios::binary );


cout<<"Введите числа: "<<endl;
while (a!=0) {
cin >> b;
os.write( ( char* ) &a, sizeof(int) );
}

os.close();


is.open( "fail.bin", ios::binary );


while ( is.read( ( char * ) &a, sizeof(int) ) ) {
cout << a << ' ';
}


is.close();

return 0;
}
0
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 11
15.12.2022, 21:31  [ТС] 8
Цитата Сообщение от Folian Посмотреть сообщение
и чо получаецо?
#include<iostream>
#include<fstream>

using namespace std;

int main() {
int a=0, b;
ifstream is;
ofstream os;

os.open( "fail.bin", ios::binary );


cout<<"Введите числа: "<<endl;
while (a!=0) {
cin >> b;
os.write( ( char* ) &a, sizeof(int) );
}

os.close();


is.open( "fail.bin", ios::binary );


while ( is.read( ( char * ) &a, sizeof(int) ) ) {
cout << a << ' ';
}


is.close();

return 0;
}

Добавлено через 2 минуты
Подвисло не много, но пока только так
0
Вездепух
Эксперт CЭксперт С++
12802 / 6677 / 1797
Регистрация: 18.10.2014
Сообщений: 16,902
15.12.2022, 21:35 9
Цитата Сообщение от Progmmmmer Посмотреть сообщение
os.write( ( char* ) &a, sizeof(int) );
Цитата Сообщение от Progmmmmer Посмотреть сообщение
Надо создать на диске бинарный файл с реальными числами.
Слово "реальными" в вашем задании является калькой со слова "real", то есть речь идет о вещественных числах.

Цитата Сообщение от Progmmmmer Посмотреть сообщение
C++
1
2
3
4
5
6
int a=0, b;
...
while (a!=0) {
  cin >> b;
  os.write( ( char* ) &a, sizeof(int) );
}
??? Тот неловкий момент, когда не можешь понять, что тут пытались написать: бесконечный цикл или цикл, который никогда не выполнится.
0
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 11
15.12.2022, 21:37  [ТС] 10
Это не много с другого языка переведено так прости за мой русский

Добавлено через 1 минуту
Цитата Сообщение от TheCalligrapher Посмотреть сообщение
Слово "реальными" в вашем задании является калькой со слова "real", то есть речь идет о вещественных числах.



???
с этим у меня и проблемы, думаю как сделать чтобы не было ограничения вводе чисел, с for не очень выходит
0
Вездепух
Эксперт CЭксперт С++
12802 / 6677 / 1797
Регистрация: 18.10.2014
Сообщений: 16,902
15.12.2022, 21:38 11
Цитата Сообщение от Progmmmmer Посмотреть сообщение
Это не много с другого языка переведено так прости за мой русский
Суть от этого не меняется.
0
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 11
15.12.2022, 21:44  [ТС] 12
Цитата Сообщение от TheCalligrapher Посмотреть сообщение
Суть от этого не меняется.
думаю имеются ввиду целые числа
0
1710 / 1110 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
15.12.2022, 22:00 13
Цитата Сообщение от Progmmmmer Посмотреть сообщение
думаю имеются ввиду целые числа
Ну, чувак, ну сказали трижды шо эт вещественные
Миниатюры
Создание и работа с бинарными файлами  
0
SmallEvil
15.12.2022, 22:06
  #14

Не по теме:

Целые - это реальные числа. 8-)
Все остальное, это масоны придумали, чтобы наши рубли(тугрики) делить :)

0
1710 / 1110 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
15.12.2022, 22:16 15
Progmmmmer,
кароч, не мудри пока с бесконечным вводом и одновременным чтением; от эта штука твоя, подкорректированная, должна заделать файл на три дабла:

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
#include<iostream>
#include<fstream>
 
using namespace std;
 
int main() {
    //int a = 0, b;
//  ifstream is;
    ofstream os;
 
    os.open("fail.bin", ios::binary);
 
    cout << "Введите числа: " << endl;
    //while(a != 0) {
    double a {};
    std::size_t n { 3 };
    for(size_t i { 0 }; i < n; ++i)
    {
        //cin >> b;
        std::cin >> a;
        os.write((char*)&a, sizeof(double));//sizeof(int));
    }
 
    os.close();
    /*
 
    is.open("fail.bin", ios::binary);
 
 
    while(is.read((char *)&a, sizeof(int))) {
        cout << a << ' ';
    }
 
 
    is.close();
    */
    return 0;
}
Попробуй прочитать.

Добавлено через 4 минуты

Не по теме:

Цитата Сообщение от SmallEvil Посмотреть сообщение
Целые - это реальные числа. 8-)
Если все медведи чоткие поцы, значит ли это что белые медведи тоже чоткие поцы?


0
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 11
15.12.2022, 22:17  [ТС] 16
Цитата Сообщение от Folian Посмотреть сообщение
Progmmmmer,
кароч, не мудри пока с бесконечным вводом и одновременным чтением; от эта штука твоя, подкорректированная, должна заделать файл на три дабла:

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
#include<iostream>
#include<fstream>
 
using namespace std;
 
int main() {
    //int a = 0, b;
//  ifstream is;
    ofstream os;
 
    os.open("fail.bin", ios::binary);
 
    cout << "Введите числа: " << endl;
    //while(a != 0) {
    double a {};
    std::size_t n { 3 };
    for(size_t i { 0 }; i < n; ++i)
    {
        //cin >> b;
        std::cin >> a;
        os.write((char*)&a, sizeof(double));//sizeof(int));
    }
 
    os.close();
    /*
 
    is.open("fail.bin", ios::binary);
 
 
    while(is.read((char *)&a, sizeof(int))) {
        cout << a << ' ';
    }
 
 
    is.close();
    */
    return 0;
}
Попробуй прочитать.

Добавлено через 4 минуты

Не по теме:


Если все медведи чоткие поцы, значит ли это что белые медведи тоже чоткие поцы?


Понял, спасибо. Как мне сюда вставить твой тот первый код? Я уже часов 6 наверное сижу над этими заданиями
0
1710 / 1110 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
15.12.2022, 22:20 17
Цитата Сообщение от Progmmmmer Посмотреть сообщение
Как мне сюда вставить твой тот первый код?
А ты не вставляй пока. Ты полученный файл туда подмахни отдельно к той проге. Эт сейчас лучше будет для понимания.
0
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 11
15.12.2022, 22:23  [ТС] 18
Цитата Сообщение от Folian Посмотреть сообщение
А ты не вставляй пока. Ты полученный файл туда подмахни отдельно к той проге. Эт сейчас лучше будет для понимания.
Для понимания лучше, но мне надо до завтрашнего утра сдать это задание ещё и декану
0
1710 / 1110 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
15.12.2022, 22:33 19
Цитата Сообщение от Progmmmmer Посмотреть сообщение
но мне надо до завтрашнего утра сдать это задание ещё и декану
А мы не в детском саду, а я не твоя нянечка.
Все сложные моменты мы тут уже нарисовали, осталось только раскрасить.
0
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 11
15.12.2022, 23:07  [ТС] 20
Цитата Сообщение от Folian Посмотреть сообщение
А мы не в детском саду, а я не твоя нянечка.
Все сложные моменты мы тут уже нарисовали, осталось только раскрасить.
Это я сейчас и сделал, выводит первые 3 числа. Разбираю почему так

Добавлено через 25 минут
Так, вопрос, как эта программа должна считать сумму чисел?
0
15.12.2022, 23:07
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.12.2022, 23:07
Помогаю со студенческими работами здесь

Работа с бинарными файлами
Помогите пожалуйста, уже перерыла все книги и весь инет, и чего-либо понятного мне не нашла..((...

Работа с бинарными файлами
Создать бинарный файл с информацией о работниках предприятия: 1) фамилия 2) возраст 3)...

Работа с бинарными файлами
Создать текстовый файл с произвольным текстом. Разработать программу, которая выводит на экран по...

Работа с бинарными файлами
1) программное создания бинарного (двоичного) файла и заполнение его данным, структура которых...

Работа с бинарными файлами
Здравствуйте, мне нужна помощь. В моей программе сначала вводятся оценки за вступительные экзамены...

Работа с бинарными файлами
Добрый вечер, мне нужно записать в файл оценки (в баллах), полученные некоторым студентом на...

Работа с бинарными файлами
Доброго времени суток! Нашел программу на форуме, она запускается, но файлы бинарные и не...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
Как написать микросервис на Go/Golang с Kafka и GitHub CI/CD
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C# с RabbitMQ, CQRS и CI/CD
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
Как создать игру "Танчики" на Unity3d и C#
InfoMaster 14.01.2025
Разработка игр – это увлекательный процесс, сочетающий в себе творчество и технические навыки. В этой статье мы рассмотрим создание классической игры "Танчики" с использованием Unity3D и языка. . .
Организую платный онлайн микро-курс по доработке Android-клиента Telegram
_Ivana 14.01.2025
Официальная версия и распространенные форки не полностью устраивают? Сделай свою кастомную версию клиента! 4 занятия по 2 часа (2 недели пн, ср 19:00-21:00 по Москве). Первое вводное занятие. . .
Как создать приложение для фитнеса для iOS/iPhone на Kotlin
InfoMaster 14.01.2025
Создание собственного фитнес-приложения — это не только захватывающий, но и полезный процесс, ведь оно может стать вашим верным помощником на пути к здоровому и активному образу жизни. В современных. . .
Как создать приложение магазина для iOS/iPhone на Swift
InfoMaster 14.01.2025
Введение в разработку iOS-приложений Разработка приложений для iPhone и других устройств на базе iOS открывает огромные возможности для создания инновационных мобильных решений. В данной статье мы. . .
Это работает. Скорость асинхронной логики велика. Вопрос видимо останется в стабильности. Плата - огонь!
Hrethgir 13.01.2025
По прошлому проекту в Logisim Evolution https:/ / www. cyberforum. ru/ blogs/ 223907/ blog8781. html прилагаю файл архива проекта в Gowin Eda. Восьмибитный счётчик из сумматора+ генератор сигнала. . .
UserScript для подсветки кнопок языков программировани­­­­я в зависимости от текущего раздела
volvo 13.01.2025
В результате работы этого скрипта подсвечиваются нужные кнопки не только в форме быстрого ответа, но и при редактировании сообщения: / / ==UserScript== / / @name CF_DefaultLangSelect / / . . .
Введение в модели и алгоритмы машинного обучения
InfoMaster 12.01.2025
Машинное обучение представляет собой одну из наиболее динамично развивающихся областей искусственного интеллекта, которая фокусируется на разработке алгоритмов и методов, позволяющих компьютерам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru