Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти произведение всех целых чисел в диапазоне от А до Б включительно https://www.cyberforum.ru/ cpp-beginners/ thread120590.html
Помогите кто-нибудь пожалуйста я полный ноль в программировании... Нужно написать две простенькие програмки на С++. 1) Вводятся с клавиатуры координаты диагонали прямоугольника (типа "1 3 4 9")....
Консольное приложение начисления отпускных. C++
Здравствуйте, пишу первый раз на данном форуме. Ищу помощь,в виде кода и коментариев к этой задачи. Программное обеспечение для начисления отпускных. Указание: При расчете суммы отпускных берутся...
Связный список C++
Посчитать сколько слов, содержит текст поисзвольной длины. Разделителем между словами является символ пробела. Вывести на экран список всех встречающихся в тексте слов и их количество. Указание:...
C++ Структура Информация о хранящихся на складе товарах состоит из: 1) инвентаризационного номера; 2) наименование товара; 3) количество в штуках; 4) цены; 5) даты поставки. Напишите структуру, описывающую... https://www.cyberforum.ru/ cpp-beginners/ thread120546.html
C++ двойной указателем на указатель на вектор (C++) https://www.cyberforum.ru/ cpp-beginners/ thread120544.html
Доброго времени суток. Столкнулся со следующей проблемой Код: //файл matrix.h #include <iostream> #include <cstdlib> #include <vector> #include <fstream>
Переписать первые элементы каждой строки матрицы D(3,3), которые больше 10, в массив В. C++
Пожалуйста помогите написать прогу на C Переписать первые элементы каждой строки матрицы D(3,3), которые больше 10, в массив В.
C++ Количество совпадающих строк
Даны 2 строки, слова в которых разделены пробелами. Нужно подсчитать количество совпадающих строк в этих двух строках. Пишу на TurboC. Программа должна быть в С++. В ТС нет библиотеки string,...
C++ Найти сумму элементов массива, расположенных после последнего элемента, равного нулю Всем, привет)вобщем задачка такая,очень нужна помощь!!!!) помогите,кто сможет! В двумерном массиве,состоящем из m и n элементов вычислить: 1. количество положительных элементов массива 2. сумму... https://www.cyberforum.ru/ cpp-beginners/ thread120523.html
C++ Программирование пользовательских функций https://www.cyberforum.ru/ cpp-beginners/ thread120521.html
Помогите с програмкой) С клавиатуры ввести текст, признаком конца ввода считать точку. Создать две функции для работы с текстом: • подсчёт количества слов; • поиск самого короткого слова
C++ Одномерные массивы. Помогите с задачками, пожалуйста. В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) сумму отрицательных элементов массива; 2) произведение элементов массива,... https://www.cyberforum.ru/ cpp-beginners/ thread120519.html
spam_by
0

Сортировка структуры

22.04.2010, 20:06. Просмотров 687. Ответов 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();
}
Прошу помощи у знающих людей!!! Принцип сортировки структур мне известен но вот как приминить его к данному коду я хз((

Вернуться к обсуждению:
Сортировка структуры
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.04.2010, 20:06
Готовые ответы и решения:

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

Сортировка структуры
Не могу придумать алгоритм сортировки структуры, пока все что получилось это найти наибольшее...

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

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

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