| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Фаил+функции |
| Автор: Кит 22.5.2005, 08:05 | ||
| Помогите пожалуйста доделать программу!!! Задание такое: Для хранения данных о ноутбуках описать структуру вида: struct NOTEBOOK{ struct disp_res{ // разрешающая способность дисплея int x; // по горизонтали int у; // по вертикали }; int f; // частота регенерации float d; // размер диагонали дисплея float hdd; // объем диска char model[21]: // наименование } Нужно написать функцию, которая читает данные о ноутбуках из файла note.txt в структуру приведенного вида. Написать функцию, которая записывает содержимое структуры в конец бинарного файла. Структура бинарного файла: первые два байта — целое число записей в файле; далее записи в формате структуры NOTEBOOK. На основе разработанных функций осуществляется запись в двоичный файл данных только о тех ноутбуках, тактовая частота процессора которых больше 120МГц, отсортированные в порядке возрастания цены. Помогите доделать последний пункт задания: Осуществить запись в двоичный файл данных только о тех ноутбуках, тактовая частота процессора которых больше 120МГц, отсортированные в порядке возрастания цены. Вот, что у меня получилось с программой кроме последнего пункта: Файл note.txt содержит например такую информацию: Aser Note Light 2699 5.6 02.0x11.8x08.3 100 40 10.4 1 1024x0768 60 0.774 ASW ND5123T 3489 7.2 02.3x11.8x10.1 133 32 12.1 2 1024x0768 70 1.300 ARMNote TS80CD 3699 7.2 02.0x11.5x08.8 133 64 11.3 1 1024x0768 75 1.300 где каждая строка содержит данные об одной модели. Данные в строке размещаются в следующих полях: 1: 20 — наименование модели; 21: 24 — цена в долларах (целое число); 26: 28 — масса ноутбука в кг (число с десятичной точкой из четырех символов); 30: 43 — габаритные размеры ноутбука в дюймах (ВЫСОТАхДЛИНАхШИРИНА — три числа с десятичной точкой (4 символа, включая точку, разделенные 'х'); 44: 47 — частота процессора в МГц (целое число из трех символов); 49:50 — максимальный объем ОЗУ в мегабайтах (целое число из двух символов); 52:55 — размер диагонали дисплея в дюймах (число с десятичной точкой из четырех символов, включая точку); 57 — размер видеопамяти в мегабайтах — целое число из одного символа; 59: 67 — разрешающая способность дисплея в пикселах (два целых числа, разделенные 'х'); 69: 70 — частота регенерации дисплея в Гц (целое число из двух символов); 72: 76 — объем HDD в гигабайтах (число с десятичной точкой из пяти символов). Все неописанные позиции заполнены пробелами. Все эти данные распологаются на 3 (их конечно будет больше) строках соответственно
|