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

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

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

Сортировка структуры - C++

22.04.2010, 20:06. Просмотров 614. Ответов 0
Метки нет (Все метки)

Такая задача уже неоднократно была описана на вашем форуме но сортировки негде несмог найти:
Написать функцию, которая читает данные о ноутбуках из файла note.txt (см. Задача 40) в структуру приведенного вида. Написать функцию, которая записывает содержимое структуры в конец бинарного файла. Структура бинарного файла: первые два байта (целое) число записей в файле; далее записи в формате структуры NOTEBOOK.
Написать программу, в которой на основе разработанных функций осуществляется чтение данных только для тех ноутбуков, частота процессора которых больше 120 МГц, и запись в бинарный файл по убыванию цены.
Вот что навоял(точнее собрал из готовых алгоритмов)
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#include <fstream.h>
#include <conio.h>
#include <string.h>
#include <iostream.h>
#include <fstream.h>
#include <iomanip.h>
#include <stdlib.h>
#include <stdio.h>
 
struct NOTEBOOK {
    char model[21];     
    struct size {       
    float x;
    float y;
    float z;
    };
    size xyz;
    float w;    
    int price;
    int Hz;
};
 
istream& operator>>(istream &in, NOTEBOOK &note)
{
    memset(&note, 0, sizeof(note));
    char buffer[100];
    in.getline(buffer, sizeof(buffer));
 
    sscanf(buffer,
 "%20c %u %f %fx%fx%f %u",
 &note.model,
 &note.price,
 &note.w,
 &note.xyz.x,
 &note.xyz.y,
 &note.xyz.z,
 &note.Hz
 );
    return in;
}
 
ostream& operator<<(ostream &out, const NOTEBOOK &note)
{
 
cout << note.model 
<< note.price << ' '
      << note.w  << ' ' << note.xyz.x  << ' '
      << note.xyz.y  << ' '
      << note.xyz.z  << endl;
 
   return out;
}
 
istream& read(istream &in, NOTEBOOK &note)
{
   return in.read((char*)&note, sizeof(note));
}
 
 
iostream& write(iostream &io, const NOTEBOOK &note) 
{
   union 
   {
       unsigned value;
       char     buf[2];
   } size = {1};
 
   io.seekg(0, ios::beg);
   io.read(size.buf, sizeof(size.buf));
   io.clear();
   ++size.value;
   io.seekp(0, ios::beg);
   io.write(size.buf, sizeof(size.buf));
   io.seekp(0, ios::end);
   io.write((const char*)&note, sizeof(note));
   return io;
}
 
void main()
{
    
   NOTEBOOK note;
   ifstream in("note.txt");
   fstream bin("note.bin", ios::in|ios::out|ios::binary);
 
   while (in >> note)
   {
       write(bin, note);
       if (in.eof()) break;//!!!
   }
 
   bin.seekg(2, ios::beg);
 
   while (read(bin, note))
   {
       if (bin.eof()) break;//!!!
       cout << note;
   }
 
   getch();
}
Прошу помощи у знающих людей!!! Принцип сортировки структур мне известен но вот как приминить его к данному коду я хз((
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.04.2010, 20:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сортировка структуры (C++):

Структуры. Сортировка массива структуры - C++
Здравствуйте! В чем моя ошибка?? Нужно отсортировать массив структуры по возрастанию среднего балла?? Делаю это с помощью...

Сортировка структуры - C++
Второй день бьюсь с сортировкой структур, покажу код, входные и выходные данные: struct TZap{ char Name; char...

Сортировка структуры - C++
Всем привет. Нужна помощь при сортировке. Во время сортировки углов нужно так же отсортировать их координаты чтобы каждая координата...

сортировка структуры. - C++
Возникла проблема при сортировке. возможно в коде есть и моя ошибка. ну суть в том, что он не работает. нужно отсортировать названия...

Структуры(сортировка) - C++
есть программа с описание структуры......вбиваем начальный маршрут(точка отправки) и конечный(точка прибытия), а также его номер........ЭТА...

Структуры. Сортировка - C++
Здравствуйте, ув. форумчане. Я студент 1ого курса и только недавно начал изучать C++, учился по видеоурокам, но застрял на структурах, не...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.04.2010, 20:06
Привет! Вот еще темы с ответами:

Сортировка структуры - C++
Отсортировать структуру по желанию пользователя. 1. Вывести на экран книги в алфавитном порядке с указанием авторов, 2. Число книг...

Сортировка и структуры - C++
Задача : &quot;Имеется список 10 политических деятелей. Каждый из 100 опрошенных называет трех политиков, и назначает каждому из них одно из...

Сортировка структуры - C++
Есть структура struct v{ string one; string two; int three; }; Подскажите как отсортировать массив структур по полю...

Сортировка структуры - C++
Не могу придумать алгоритм сортировки структуры, пока все что получилось это найти наибольшее значение. //Макросы #define FILE_PATH ...


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

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

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