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

Как прочитать из файла данные как структуру - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Алгоритм умной стратегии компьютера, крестики - нолики http://www.cyberforum.ru/cpp-beginners/thread1153266.html
Ребят, подкиньте идей реализации
C++ Очереди (С++) Помогите, пожалуйста, с помощью очереди реализовать данную задачу: Идет посадка в 100-местный самолет. В очеpедь выстpоились 100 пассажиpов. Пеpвой стоит сyмасшедшая стаpyшка. Зайдя в салон, она садится на любое слyчайно выбpанное место. Остальные пассажиpы - ноpмальные люди: каждый из них, зайдя в салон, садится на свое (обозначенное в билете) место, если оно свободно, и на любое из свободных -... http://www.cyberforum.ru/cpp-beginners/thread1153253.html
C++ Перевод кода с Pascal, графика
Код на Паскале uses crt,GraphABC; const n=255; max=10; var z,z1,c: complex; i,ix,iy: integer; begin cls;
Как удалить слово из строки C++
в строке text есть набор слов в строке word слово которое нужно удалить как удалить ? #include <iostream> #include <conio.h> using namespace std; int main() { char word = "const";
C++ Учет заказов на предприятии http://www.cyberforum.ru/cpp-beginners/thread1153224.html
Ребят кто поможет с программой учета заказов на предприятии. Начал делать создал вход под пользователем и руководителем,создал бд,но кажется связал таблицы не правильно,и дальше вошел в тупик не знаю что делать.
C++ Чтение структур из файла Добрый день. Такой вопрос: есть структура, эту структуру заполнили с клавиатуры и записали в файл. Затем нужно работать с этим файлом, я не могу понять, как открыть этот файл как структуры для работы с её элементами подробнее

Показать сообщение отдельно
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 405
21.04.2014, 16:54     Как прочитать из файла данные как структуру
Здравствуйте. Не хочет работать программа:

Дана последовательность записей, состоящая из реквизитов: шифр цеха (Ц), шифр рабочего (Р), дата (ДТ), шифр детали (Д), количество изготовленных деталей (К).
Требуется написать программу для выполнения следующих операций:
ввод записей и создание файла FZ;
создание файла NS, каждая запись которого включает реквизиты – шифр детали (Д) и расценку одной детали (РД)
создание на базе файлов FZ и NS файла FP.
Реквизиты записей файла FP включают в себя реквизиты: С, Р, ДТ, Д (передаются из файла FZ) и реквизит С (сумма, начисленная за изготовление деталей данного шифра), вычисляемая умножением реквизита К (количество изготовленных деталей) записей файла FZ на реквизит РД записей файла NS. Поиск записей в файле NS проводится по реквизиту – шифр детали (Д) текущей записи файла FZ. Если в файле NS отсутствует запись с заданным шифром детали, то выдать сообщение: «В файле NS нет расценки детали с шифром <шифр детали>».

Вся проблема в том, что бы прочитать из файла данные как структуру. И не до конца понимаю, как сделать проверку

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
// lab_19.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <cstring> 
#include <string>
#include <cstdio>
#include <conio.h>
#include <fstream>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
using namespace std;
 
struct mystruct
{
    int C; //Шифр цеха
    int P; //Шифр рабочего
    int data; //Дата
    int D;//Шифр детали
    //
    int K;//Количество изготовленных деталей
    int RD;//Расценка одной детали
    //
    int Ce;//Сумма за изготовление деталей данного шифра
}
void main(void)
{
    //
    setlocale(LC_ALL, "Russian");
    int count=0;
    int C1[25];int P1[25];int Data1[25];int D1[25];int K1[25];int RD1[25];int Ce[25];
    ofstream fout0 ("FZ.txt");
    ofstream fout1 ("NS.txt");
    ofstream fout2 ("FP.txt");
    cout<<"Введите количество записей в файле";
    cin>>count;
    mystruct *str = new mystruct [count];
    //
    for(int i=0; i<count; i++)
    {
        cout<<"Ввод данных"<<endl;
        cout<<"Введите информацию по"<< i+1 <<" записи: \n";
        cout<<"Шифр цеха_Шифр рабочего_Дата_Шифр детали_Количество изготовленных деталей_расценка за деталь\n";
        cin >> str[i].C>>str[i].P>>str[i].data>>str[i].D>>str[i].K>>str[i].RD;
    }
    //Создание файла FZ, содержащего структуру
    for(int i=0;i<count;i++)
    {
        fout0<<str[i].C<<" "<<str[i].P<<" "<<str[i].data<<" "<<str[i].D;
    }
    fout0.close();
    //Создание файла NS, содержащего данные шифр детали и расценку одной детали
    
    for(int i=0;i<count;i++)
    {
        fout1<<str[i].D<<" "<<str[i].RD;
    }
    //Создание файла FP
    ifstream fout0 ("FZ.txt");
    for(int i=0;i<count;i++)
    {
        fout0 >> C1; 
        fout0 >> P1;
        fout0 >> Data1;
        fout0 >> D1;
        fout1 >> K1;
        fout1 >> RD1;
        Ce=K1*RD1;
        fout2<<C1<<P1<<Data1<<D1<<RD1<<endl;
 
    }
    
    system("pause);
        return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru