0 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 5
1

Массив структур, записан в бинарный файл. Найти максимальный элемент

10.03.2019, 00:17. Показов 1704. Ответов 1

Массив структур, записан в бинарный файл. Каждая структура состоит из элементов: производитель, товар, склад. Для производителя задать название и адрес фирмы. Для товара – название товара, стоимость, объем партии товара. Нужно найти товар, который дольше всего хранится на складе. Неправильно работает функция, не могу понять почему(( Выводит нулевой элемент. Помогите, пожалуйста(
Ниже фрагменты

struct stock //стоимость
{
char time_arrival[20];
float term_storage;
};
struct product //товар
{
char name_p[20];
float cost;
float amount;
stock sklad;
};
struct manufacturer //производитель
{
char name_m[20];
char adress[20];
int tovnum;
product tov[100];
};
int i, j;
FILE *fp;


void longest_storage()
{
manufacturer M[100];
if (!(fp = fopen("fp.dat", "rb"))) cerr << "File don't exist!";
else
{
i = 0;
fread(&M[i], sizeof(manufacturer), 1, fp);
while (!feof(fp))
{
i++;
fread(&M[i], sizeof(manufacturer), 1, fp);
}
int kol_prod = i;
cout << "Product with the longest term of storage:";
float max = M[0].tov[0].sklad.term_storage;
int num = 0;
for (i = 1;i < kol_prod;i++)
if (M[i].tov[i].sklad.term_storage > max)
{
max = M[i].tov[i].sklad.term_storage;
num = i;
}
cout << M[num].tov[num].name_p << ", term of storage " << max << " months" << endl;
fclose(fp);
}
_getch();
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.03.2019, 00:17
Ответы с готовыми решениями:

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

Заполнить массив структур сканеров и записать его в бинарный файл
Здравствуйте! Новый день - новая проблема. Не могу справиться с заданием семинара, помогите...

Найти максимальный и минимальный элемент,и вывести их в файл и Прочитать массив из файла.
Первая задача Найти максимальный и минимальный элемент,и вывести их в файл Вторая задача...

Массив: Найти максимальный элемент каждой строки и максимальный элемент каждого столбца.
Задан массив случайных действительных чисел Array(N,N). Найти максимальный элемент каждой строки и...

1
Мозгоправ
1737 / 1031 / 468
Регистрация: 01.10.2018
Сообщений: 2,138
Записей в блоге: 2
10.03.2019, 03:30 2
Лучший ответ Сообщение было отмечено Masha0_0 как решение

Решение

У вас есть несколько производителей, которые делают по несколько продуктов.

Когда вы ищите самый залежавшийся товар, надо для каждого производителя проверить каждый продукт. Т.е. должно быть два вложенных цикла: внешний по производителю, внутренний - по продукту. И, соответственно, для максимума надо запоминать два индекса.

А сейчас у вас только один цикл, который проверяет время хранения "по диагонали" для i-го производителя только i-ый продукт.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.03.2019, 03:30
Помогаю со студенческими работами здесь

Бинарный файл структур
// lab_3.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot;...

Бинарный файл структур
Не могу привести код в рабочее состояние.. Есть два бинарных файла, нужно найти данные с первого и...

Масив структур + бинарный файл
Помогите написать программу. Нужно создать массив структур. Каждая структура состоит из следующих...

Дан массив А с N элементами. Найти максимальный элемент с нечетным индеском и минимальный элемент с четным
Дан массив А с N элементами. Найти максимальный элемент с четным индеском и минимальный элемент с...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru