Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

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

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

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

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

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

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

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

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

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

Добавлено через 10 часов 40 минут
Если бесплатно не можете, то хоть за деньги кто-нибудь согласиться помочь подредактировать? Отправлю 50р. на веб мани.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.12.2011, 07:44
Привет! Вот еще темы с ответами:

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

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

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

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


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

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

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