Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
 Аватар для Вася1q
21 / 21 / 3
Регистрация: 13.09.2011
Сообщений: 314

Задача на использование структур.

03.12.2011, 09:58. Показов 1859. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем форумчанам!)
Вот такую непростую задачу мне задали, должен за выходные уложиться. Но мне кажется это утопия.
Различные цеха завода выпускают продукцию нескольких наименований. Сведения о выпущенной продукции включают: наименование, количество, номер цеха. Для описания сведений о выпущенной продукции в программе необходимо использовать тип данных структура. Для хранения сведений о выпущенной продукции создать бинарный файл, ориентированный на тип данных структура. Предусмотреть в программе просмотр бинарного файла и выполнить его обработку: для заданного цеха вывести информацию о выпущенной продукции в порядке убывания количества.
Объясните мне пожалуйста (т.е. "переведите" на более простой язык для моего понимания).
Как я понял мне нужно создать файлик на локальном диске, указать к нему путь, если путь к файлу указан верно, то открыть его и записать требуемые сведения. А вот что делать дальше? Ума не приложу. Помогите хоть чем-нибудь. Не обязательно писать за меня программу, хочу постараться ее сам осилить)))

Добавлено через 6 часов 41 минуту
Помогите!

Добавлено через 19 минут
C++
1
2
3
4
5
6
7
#include <fstream>
#include <iostream>
#include <string>
using namespace std;
int main()
{
        ofstream ofs("D:\\test.txt"); //создаём файл
........................................ .....................
........................................ .....................
........................................ .....................
помогите хоть с парой строк.

Добавлено через 1 минуту
........................................ ................
C++
1
2
3
 ofs.close(); //закрываем 
 ifstream ifs("D:\\test.txt");  //открываем
 if(!ifs.is_open())
Добавлено через 1 минуту
Дальше нужно выполнить сортировку, но как лучше бы это сделать?

Добавлено через 10 часов 58 минут
Вот что у меня получилось:
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
#include <iomanip>
#include <iostream>      
#include <conio.h>      
#include <math.h>      
using namespace std;      
 
int main()      
{      
          struct RECORD{      
          char *header;  // Название детали , но уже через char *     
          int quantity;  // Количество деталей      
          int shop;   // Номер цеха      
         };      
 
         cout << "Введите количество записей о выпущенных деталях: ";      
         int N;      
         cin >> N;      
 
         RECORD* details;      
         details = new RECORD[N];      
 
         for(int i = 0; i < N; ++i)      
         {      
 
          cout << "Введите номер цеха: "; cin >> details[i].shop;      
          cout << "Введите название детали: ";
       details[i].header= (char *)malloc(128); //выделяем память под название
       cin >> details[i].header; //получаем название       
          cout << "Введите кол-во деталей выпущенных данным цехом: ";
       cin >> details[i].quantity;      
         }      
 
         for(int i = 0; i < N; ++i)      
         {      
           cout << details[i].header << '\t' << details[i].shop << '\t' << details[i].quantity << endl;      
         }      
 
         cout << "Введите номер цеха, для которого высчитывается общее колличество выпущенных изделий: ";      
         int shop;      
         cin >> shop;
 
      int count = 0;      
         for(int i = 0; i < N; ++i)      
         {      
 
          if(details[i].shop == shop)      
           count += details[i].quantity;      
         }      
 
      cout << "Цех номер: " << shop << " выпустил: " << count << " деталей: " << endl;     
     _getch();
        return 0;      
}
Добавлено через 1 минуту
Теперь хочу, чтобы русский текст нормально отображался, а не иероглифами. Помогите пожалуйста хоть с этим, а то за все время мне даже никто ничего не посоветовал...

Добавлено через 1 минуту
P.S.Компилятор у меня DEV c++.
пытался использовать
C++
1
locale::global(locale("rus"));
ничего не выходит.

Добавлено через 14 минут
Хух...нашел) Для все у кого Dev c++ и русские символы (буквы, слова) отображаются неверно. Скачайте дополнение с сайта
http://kpolyakov.narod.ru/school/c/faq.htm#rus
и радуйтесь)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.12.2011, 09:58
Ответы с готовыми решениями:

Задача на использование структур
Условие: в магазине сформирован список клиентов, который включает ФИО, домашний адрес и размер предоставляемой скидки. Удалить из этого...

Использование строк.Использование структур
Задачка: Дана строка,состоящая из групп нулей и едениц. Найти и вывести на экран группы с нечетным количеством символов. И еще одна: ...

с++ Использование структур
Даны сведения о кубиках: размер кубика, его цвет, материал.Найти количество кубиков каждого из перечисленных цветов и их суммарный объем.

2
 Аватар для Вася1q
21 / 21 / 3
Регистрация: 13.09.2011
Сообщений: 314
08.12.2011, 17:06  [ТС]
Форумчане, опять проблема((( выручайте!
Подредактируйте программу, чтобы она работала как положено. Т.е.
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
#include <iostream> 
#include <iomanip>     
#include <math.h>      
using namespace std;      
int main()      
         {      
          struct RECORD{      
          char *imya_det;  // Название детали , но уже через char * т.к. вводятся буквы, а не цифры.
          int kol_det;  // Количество деталей      
          int n_ceha;   // Номер цеха      
         };      
 
         cout << "Введите количество записей о выпущенных деталях: ";      
         int N;      
         cin >> N;      
 
         RECORD* details;      
         details = new RECORD[N];      
 
         for(int i = 0; i < N; ++i)      
         {      
       cout << "Введите номер цеха: "; cin >> details[i].n_ceha;      
       cout << "Введите название детали: ";
       details[i].imya_det = (char *)malloc(128); //выделяем память под название
       cin >> details[i].imya_det; //получаем название       
       cout << "Введите кол-во деталей выпущенных данным цехом: ";
       cin >> details[i].kol_det;      
         }      
       for(int i = 0; i < N; ++i)      
         {      
           cout << details[i].imya_det << '\t' << details[i].n_ceha << '\t' << details[i].kol_det << endl;      
         }      
       cout << "Введите номер цеха, для которого высчитывается общее колличество выпущенных изделий: ";      
         int n_ceha;      
         cin >> n_ceha;
 
      int count = 0;      
         for(int i = 0; i < N; ++i)      
         {      
           if(details[i].n_ceha == n_ceha)      
           count += details[i].kol_det;      
         }      
      cout << "Цех номер: " << n_ceha << "Выпустил: " << count << "Деталей: " << endl;     
      system("pause");
        return 0;      
}
Цитата Сообщение от Вася1q Посмотреть сообщение
для заданного цеха вывести информацию о выпущенной продукции в порядке убывания количества.
Добавлено через 55 секунд
Я вывожу на экран номер цеха, а вот "Выпустил" и "Деталей" не могу(((

Добавлено через 21 час 22 минуты
Пожалуйста помогите. Работу уже скоро нужно сдать, а я не могу исправить эту недоработку.
0
 Аватар для Вася1q
21 / 21 / 3
Регистрация: 13.09.2011
Сообщений: 314
14.12.2011, 07:44  [ТС]
Уже столько времени прошло, и никто не помог. Я понимаю когда просто накидают кучу задач и решай им...Но я же стараюсь и даже часть сделал сам. Почему никто не откликнулся? Хотя бы советом помогли, или ссылкой на похожую программку.

Добавлено через 10 часов 40 минут
Если бесплатно не можете, то хоть за деньги кто-нибудь согласиться помочь подредактировать? Отправлю 50р. на веб мани.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.12.2011, 07:44
Помогаю со студенческими работами здесь

Использование структур
Какие типы данных и переменные используются в приведенной ниже программе? struct point { double x,y; }; struct circle { ...

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

Использование структур
#include&lt;iostream&gt; #include&lt;conio.h&gt; #include&lt;string.h&gt; #include&lt;stdlib.h&gt; #include&lt;stdio.h&gt; #include&lt;windows.h&gt; using...

Использование структур
Здравствуйте. Помогите решить нижеследующую задачу. В данный момент нужно переделать данную задачу с использованием структур. Целый день...

Использование структур
В прайс-листе с.ц. находится информация о номере модели телефона, номеров комплектующих деталей и их стоимости. Вывести список...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru