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

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

Войти
Регистрация
Восстановить пароль
 
Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
#1

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

03.12.2011, 09:58. Просмотров 799. Ответов 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
и радуйтесь)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.12.2011, 09:58     Задача на использование структур.
Посмотрите здесь:

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

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

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

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

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

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

Использование структур - C++
#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...

Использование структур struct - C++
Писал код по методичке, потом уже вконец запутался и не могу понять как сделать правильно. Подскажите хорошо растолкованную тему по...

Использование структур данных - C++
помогите исправить ошибки:cry: #include&lt;iostream&gt; #include&lt;stdlib.h&gt; #include&lt;string&gt; #include&lt;vector&gt; #include&lt;algorithm&gt; ...

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


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
08.12.2011, 17:06  [ТС]     Задача на использование структур. #2
Форумчане, опять проблема((( выручайте!
Подредактируйте программу, чтобы она работала как положено. Т.е.
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 минуты
Пожалуйста помогите. Работу уже скоро нужно сдать, а я не могу исправить эту недоработку.
Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
14.12.2011, 07:44  [ТС]     Задача на использование структур. #3
Уже столько времени прошло, и никто не помог. Я понимаю когда просто накидают кучу задач и решай им...Но я же стараюсь и даже часть сделал сам. Почему никто не откликнулся? Хотя бы советом помогли, или ссылкой на похожую программку.

Добавлено через 10 часов 40 минут
Если бесплатно не можете, то хоть за деньги кто-нибудь согласиться помочь подредактировать? Отправлю 50р. на веб мани.
Yandex
Объявления
14.12.2011, 07:44     Задача на использование структур.
Ответ Создать тему
Опции темы

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