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

Отброс поля Рост при выводе результата - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать программу, которая бы обеспечивала создание, просмотр, дополнения и изъятия из файла http://www.cyberforum.ru/cpp-beginners/thread907256.html
Создать программу, которая бы обеспечивала создание, просмотр, дополнения и изъятия из файла, содержащего информацию об итогах сессии на 1-м курсе: фамилия (12 букв), группа (целое число от 1 до 16),...
C++ Доработать блоксхему Не знаю что не так. Мне всю схему перечеркнули Составьте программу, которая создает файл, состоящий из неопределенного количества значений типа int. Для ввода используйте цикл, выход из цикла —... http://www.cyberforum.ru/cpp-beginners/thread907248.html
перевести с паскаля на с++, пожалуйста C++
uses crt,graphABC; var v,x1,x2,y1,y2:integer; x,dx,y,mx,my,a,b:real; w,h,x0,y0,i:integer; st:string; begin clrscr; SetWindowSize(700,560); writeln('введите скорость от 1 до 10'); readln(v);
вывести на экран все слова предложения (которое предлагается ввести пользователю), которые состоят из тех же букв, что и первое слово предложения. C++
Всем доброго времени суток. нужно написать обычную консольную программу которая делает вот что: вывести на экран все слова предложения (которое предлагается ввести пользователю), которые состоят из...
C++ неоднозначный вызов перегруженной функции pow http://www.cyberforum.ru/cpp-beginners/thread907168.html
Ошибка 1 error C2668: pow: неоднозначный вызов перегруженной функции 2 IntelliSense: существует более одного экземпляра перегруженная функция "pow", соответствующего списку аргументов: ...
C++ Подскажите пожалуйста как ускорить работу программы! Есть задача :"Во входном файле (вы можете читать данные из файла input.txt) записан текст. Словом считается последовательность непробельных символов идущих подряд, слова разделены одним или большим... подробнее

Показать сообщение отдельно
quicksdk
37 / 5 / 1
Регистрация: 13.04.2011
Сообщений: 193

Отброс поля Рост при выводе результата - C++

19.06.2013, 23:49. Просмотров 245. Ответов 0
Метки (Все метки)

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

Мой вариант:

Класс "Персона" имеет поля: фамилия, имя, отчество, год рождения, рост, вес.
Вывести сведения о людях, имеющих вес больше заданного.
В новом классе оставить поля: фамилия, имя , отчество, вес.


В результате у меня отображает персоны у которых вес больше 70, но как мне опустить и не отображать поле "Рост"?

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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
#include <fstream> 
#include <iostream>
#include <conio.h>
#include <cstdlib>
 
using namespace std;
 
class person //Объеявление класса Персона
{
        char surname[20];
        char name[20];
        char patronymic[20];
        public:
        int birthdayyear;
        int height;
        int weight;
        int inputweight;
        
    void getData() 
    {
        setlocale(LC_ALL,"Russian");
        cout << "Введите фамилию: ";
        cin >> surname;
        cout << "Введите имя: ";
        cin >> name;
        cout << "Введите отчество: ";
        cin >> patronymic;
        cout << "Введите год рождения: ";
        cin >> birthdayyear;
        cout << "Введите рост: ";
        cin >> height;
        cout << "Введите вес: ";
        cin >> weight;
        cout << endl; 
    }
    
    void showData()
    {
        cout << "--------------------------";
        cout << "\nФамилия: "<< surname;
        cout << "\nИмя: " << name;
        cout << "\nОтчество: " << patronymic;
        cout << "\nРост: " << height;
        cout << "\nВес: " << weight;
        cout << endl; 
        
    }
    
};
 
int main()
{
    setlocale(LC_ALL,"Russian");
    int countofperson, bigmenamount,i ;
    int inputweight=70;
    
    person men, bigmen; //Создаем объекты: просто персона и персона с весом больше чем > 70
     
    cout << "\nВведите количество Персон <=5" << endl;
    cin >> countofperson;
    
/* открываем файл для записи данных обо всех персонах 
и указываем переменную объекта ofstream и указываем название выходного файла "exam.bin"  */
     ofstream input_all;  
 
    input_all.open("personall.bin", ios::out | ios::binary ); 
    // проверка открытия файла на ошибки 
    if(! input_all) 
    {
        cerr << "\nОшибка ввода в файл" << endl;
        exit(1);
    }
    
    // ввод данных о персонах в файл
    for(i=0; i < countofperson; i++)
    {
        cout <<"\nВведите данные о Персоне"<<endl;
        men.getData();
        input_all.write((char *) &men, sizeof(men));
        
    }
    input_all.close();
    
    cout <<"Чтение данных из файла обо всех Персонах"<<endl;
    ifstream in_men;
    in_men.open("personall.bin", ios::binary ); 
    
        if(! in_men)
    {
        cerr << "Ошибка вывода в файл" << endl;
        exit(1);
    }
    
    ofstream input_bigmenonly;
    input_bigmenonly.open("bigmenonly.bin", ios::out | ios::binary );
    if (! input_bigmenonly)  
    {
     cerr<<"Ошибка вывода файла "<<endl;
     exit(1);
    }
    
        
    cout <<"\nПерсона: ";
    in_men.seekg(0);
    bigmenamount =0;
    for (i=0; i < countofperson ; i++)
    {
         in_men.read((char *) &men, sizeof(men));
         if(men.weight>=70)
         {
           bigmenamount++;
           bigmen=men;
           input_bigmenonly.write((char *) &bigmen, sizeof(bigmen));
         }
      men.showData();
    }
    cout << endl;
    in_men.close();
    input_bigmenonly.close();
    
    ifstream in_men1;
    in_men1.open("bigmenonly.bin", ios::binary); 
    cout <<"\nПерсоны с весом больше 70: "; 
    in_men1.seekg(0);
    
    for (i=0; i < bigmenamount; i++) 
  { 
 
   in_men1.read((char *) &bigmen, sizeof(bigmen));
   bigmen.showData(); 
  }
    
    return 0;
    getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru