14 / 14 / 2
Регистрация: 21.10.2012
Сообщений: 140
1

Класс Person

30.11.2012, 21:00. Показов 6502. Ответов 3
Метки нет (Все метки)

Здравствуйте!
Задание:
Разработать класс Person, который содержит соответствующие члены для хранения:
имени,
возраста,
пола и
телефонного номера.
Напишите функции-члены, которые смогут изменять эти члены данных индивидуально. Напишите функцию-член Person::Print(), которая выводит отформатированные данные о человеке.

C++ (Qt)
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
#include <iostream> 
#include <conio.h>
#include <windows.h>
 
using namespace std;
 
class Person{
 
    char name[50];
    int age;
    char sex[10];
    char telephone;
 
public:
    Person(){
 
        char name[] = {0}; 
        int age;
        char sex[] = {0};
        char telephone[] = {0};
    }
 
    ~Person(){}
 
    void InpName();
    void InpSurname();
    void InpSex();
    void InpAge();
    void InpTelephone();
    void Show();
};
 
    void Person::InpName()
    {
        cout << "Введите имя: " << endl;
        cin >> name;
    }
    void Person::InpSex()
    {
        cout << "Введите пол: " << endl;
        cin >> sex;
    }
    void Person::InpAge()
    {
        cout << "Введите возраст: " << endl;
        cin >> age;
    }
    void Person::InpTelephone()
    {
        cout << "Введите телефон: " << endl;
        cin >> telephone;
    }
    void Person::Show(){
 
            cout << "Имя: " << name << endl;
            cout << "Пол: " << sex << endl;
            cout << "Возраст: " << age << endl;  
            cout << "Телефон: " << telephone << endl;    
    }
 
    
    void main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    int i, n = 0;
    int key;
    Person pr[5];
    do
    {   
        cout << "1. Добавить" << endl << "2. Показать базу" << endl << "3. Внести изменения в базу" << endl << "4. Выход" << endl;
        cin >> key;
 
        switch(key)
        {
            case 1:
                pr[n].InpName();
                pr[n].InpSex();
                pr[n].InpAge();
                pr[n].InpTelephone();
                n++;
                system("cls");
                break;
            case 2:
                if(n == 0)
                    cout<<"База пуста!\n";
                else
                        for (i = 0; i < n; i++){
                            cout << "Запись" << i << endl;
                            pr[i].Show();
                        }
                _getch();
                system("cls");
                break;
            case 3:
                for (i = 0; i < n; i++){
                    cout << "Запись" << i << endl;
                    pr[i].Show();
                }
 
                cout << "Введите запись, которую нужно изменить: ";
                cin >> i;
                
                pr[i].InpName();
                pr[i].InpSex();
                pr[i].InpAge();
                pr[i].InpTelephone();
 
            case 4:
                 cout << "До свидания\n";
                break;
            default:
                cout << "Выбран неправильный пункт меню\n";
            break;
        }
    }
    while (key != 4);
}
Вот реализовал часть кода... У меня вопрос: Как сделать пунт вывода изменившихся данных?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.11.2012, 21:00
Ответы с готовыми решениями:

Создайте класс person. Создайте тип people, описывающий массив элементов типа person.
Создайте класс person. У него должны быть поля: name: string; sex: (&quot;муж&quot;, &quot;жен&quot;); height:...

Реализовать пользовательские типы: класс Person и класс String
1)Разработать класс Person, который содержит соответствующие члены для хранения: имени, ...

Производный класс Employee и базовый класс Person
Класс Person содержит информацию о человеке - firstName - lastName - age - address -...

Базовый класс PERSON и производный класс STUDENT
Базовый класс: ЧЕЛОВЕК(PERSON) Имя(name) - string Возраст (age) - int Определить методы...

3
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
30.11.2012, 21:09 2
SAUtrade, добавить для каждого флажок, и проверять его.
1
14 / 14 / 2
Регистрация: 21.10.2012
Сообщений: 140
30.11.2012, 21:11  [ТС] 3
go, а не нужно делать копию класса?
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
30.11.2012, 21:29 4
SAUtrade, добавить поле в класс
C++
1
bool changes;
И изменять/проверять его затем.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.11.2012, 21:29
Помогаю со студенческими работами здесь

Класс Person
Добрый день, форумчане. Решал задание из книги С.Прата, №2 из главы 10. Пусть имеется определение...

Класс Person
Здравствуйте есть одна задачка с вариантом её выполнения. Кто сможет помочь разобратьсяв этом...

Класс: создать класс "Person"
1,2 #include &lt;iostream&gt; #include &lt;string&gt; class Person { Person() : name(&quot;Alex&quot;),...

Составить класс person
Составить класс person. Переменная типа person должна вмещать следующую информацию про некоторого...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru