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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ani-ni4ka
0 / 0 / 0
Регистрация: 15.03.2011
Сообщений: 103
#1

Создать класс - C++

20.03.2012, 23:29. Просмотров 504. Ответов 2
Метки нет (Все метки)

Доброго времени суток.
Нужна помощь. Завтра контрольная, а я вот как-то не могу написать программу..
Помогите пожалустааа..
\\Создать класс содержащий данные, реализовать методы ввода вывода и выборки по условию. Класс ФИРМА содержит следующие данные: идентификационный номер сотрудника,фамилия, имя, отчество, наименование отдела, должность, категория. Вывести список сотрудников определенной категории, просчитав их заработную плату. Если категория высшая – то умножаем на 1.7 з/п, если первая категория – 1.4, если вторая - 1.2, если нет категории – 0.7.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.03.2012, 23:29     Создать класс
Посмотрите здесь:

Создать класс - C++
Создать класс, описывающий следующие понятие рабочий! фамилия,стаж,часовая зароботная плата, колличество отработаных часов. Наити: 1)...

создать класс - C++
создать класс строк и реализовать какие захочешь функции в нем. ребят можете помочь,знаю что примитивно но я вообще в этом ноль

Создать класс - C++
Здравствуйте. Имеется код(исправный) программы для деления многочлена на многочлен. Подскажите пожалуйста как мне создать класс на основе...

класс создать - C++
создать класс который в закрытой области содержит данные человека вес рост возраст пол , и пользователь через интерфейс этого класса мог...

Создать класс - C++
Создать класс, который ассоциируется с целыми дробями и поддерживает операции сложения, вычитания, выдачу знаменателю и числителя. Нужно...

создать класс - C++
Создать класс который содержит в закрытой области содержит какие либо данные, а пользователь через интерфейс этого класса может получить...

Создать класс! - C++
Создать класс для ПРИНТЕРОВ(можно для чего угодно: Автомобилей, Телефонов и т.д.). Что нам надо: Необходимо разработать иерархию...

создать класс - C++
Помогите создать класс "Хищники" с объектами:рысь, медведь.

создать класс - C++
Привет! Пользуюсь Visual C++ 6.0 Написал программу,теперь в ней необходимо создать класс. Класс должен обладать следующими свойствами: ...

создать класс) - C++
/*Создайте класс, который содержит информацию об имени а адресе. Храните всю эту информацию в символьных строках закрытой части класса. ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Infinity3000
1058 / 577 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
21.03.2012, 02:15     Создать класс #2
когда то решал такую же задачу! но она не правильно выводит. точнее выводит всех сотрудников!

сейчас пересматривать не охота!

а связи с этим
Цитата Сообщение от ani-ni4ka Посмотреть сообщение
Завтра контрольная, а я вот как-то не могу написать программу.
скину то что есть!

если у кого то будет желание может кто то и подправит!

Ну и конечно это далеко не оптимальное решение! делалось когда не все было ясно!

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
#include <iostream>
 
using namespace std;
 
class firm
{
    int id_number;      //идентификационный номер
    char surname[30];   //фамилия
    char name[20];      //имя
    char patronymic[20];//отчество
    char department[20];//наименование отдела
    char post[20];      //должность
    int category;       //котегория
    double salary;      //зарплата
public:
    firm(){}
    ~firm(){}
    void input(firm *fr, int n);
    void output(firm *fr, int n);
};
 
 
void firm::input(firm *fr, int n)
{
    int i = 0;
    while(i < n)
    {
        cout << "\nВведите инормацию о " << i + 1 << " сотруднике\n";
        cout << "\nВведите идентификационный номер сотрудника - ";
        cin >> fr[i].id_number;
        cout << "Введите фамилию сотрудника - ";
        cin >> fr[i].surname;
        cout << "Введите имя сотрудника - ";
        cin >> fr[i].name;
        cout << "Введите отчество сотрудника - ";
        cin >> fr[i].patronymic;
        cout << "Введите наименование отдела - ";
        cin >> fr[i].department;
        cout << "Введите должность сотрудника - ";
        cin >> fr[i].post;
        cout << "Введите категорию сотрудника- ";
        cin >> fr[i].category;
        cout << "Введите первоначальную зарплату сотрудника - ";
        cin >> fr[i].salary;
        i++;
    }
}
void firm::output(firm *fr, int n)
{
    int c;
    cout << "\n\nВведите категорию сотрудника (0 - 3) - ";
    cin >> c;
    for(int i = 0; i < n; i++)
    {
        if(c == 3)
        {
            fr[i].salary *= 1.7;
            cout << "\nИдентификационный номер сотрудника - " << fr[i].id_number << "\n";
            cout << "Фамилия сотрудника - " << fr[i].surname << "\n";
            cout << "Имя сотрудника - " << fr[i].name << "\n";
            cout << "Отчество сотрудника - " << fr[i].patronymic << "\n";
            cout << "наименование отдела - " << fr[i].department << "\n";
            cout << "Должность сотрудника - " << fr[i].post << "\n";
            cout << "Категория сотрудника - " << fr[i].category << "\n";
            cout << "Зарплатa сотрудника - " << fr[i].salary << "\n";
        }
        else if(c == 2)
        {
            fr[i].salary *= 1.2;
            cout << "\nИдентификационный номер сотрудника - " << fr[i].id_number << "\n";
            cout << "Фамилия сотрудника - " << fr[i].surname << "\n";
            cout << "Имя сотрудника - " << fr[i].name << "\n";
            cout << "Отчество сотрудника - " << fr[i].patronymic << "\n";
            cout << "наименование отдела - " << fr[i].department << "\n";
            cout << "Должность сотрудника - " << fr[i].post << "\n";
            cout << "Категория сотрудника - " << fr[i].category << "\n";
            cout << "Зарплатa сотрудника - " << fr[i].salary << "\n";
        }
        else if(c == 1)
        {
            fr[i].salary *= 1.4;
            cout << "\nИдентификационный номер сотрудника - " << fr[i].id_number << "\n";
            cout << "Фамилия сотрудника - " << fr[i].surname << "\n";
            cout << "Имя сотрудника - " << fr[i].name << "\n";
            cout << "Отчество сотрудника - " << fr[i].patronymic << "\n";
            cout << "наименование отдела - " << fr[i].department << "\n";
            cout << "Должность сотрудника - " << fr[i].post << "\n";
            cout << "Категория сотрудника - " << fr[i].category << "\n";
            cout << "Зарплатa сотрудника - " << fr[i].salary << "\n";
        }
        else if(c == 0)
        {
            fr[i].salary *= 0.7;
            cout << "\nИдентификационный номер сотрудника - " << fr[i].id_number << "\n";
            cout << "Фамилия сотрудника - " << fr[i].surname << "\n";
            cout << "Имя сотрудника - " << fr[i].name << "\n";
            cout << "Отчество сотрудника - " << fr[i].patronymic << "\n";
            cout << "наименование отдела - " << fr[i].department << "\n";
            cout << "Должность сотрудника - " << fr[i].post << "\n";
            cout << "Категория сотрудника - " << fr[i].category << "\n";
            cout << "Зарплатa сотрудника - " << fr[i].salary << "\n";
        }
    }
}
 
int main()
{
    setlocale(0,"");
    int n;
    cout << "Введите количество сотрудников - ";
    cin >> n;
 
    firm *fr = new firm[n];
    
    fr->input(fr, n);
    fr->output(fr, n);
 
    delete [] fr; //очищаем память
    
    system("pause >> null");
    return 0;
}
ani-ni4ka
0 / 0 / 0
Регистрация: 15.03.2011
Сообщений: 103
21.03.2012, 11:06  [ТС]     Создать класс #3
спасибо огромное)

Добавлено через 40 минут
Разобралась и переделала.
Поменяла ветвление на switch и все работает как надо)
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
136
#include <iostream>
#include <conio.h>
 
using namespace std;
 
 
class firm
{
        int id_number;          //идентификационный номер
        char surname[30];       //фамилия
        char name[20];          //имя
        char patronymic[20];//отчество
        char department[20];//наименование отдела
        char post[20];          //должность
        int category;           //котегория
        double salary;          //зарплата
public:
        firm(){}
        ~firm(){}
        void input(firm *fr, int n);
        void output(firm *fr, int n);
};
 
 
void firm::input(firm *fr, int n)
{
        int i = 0;
        while(i < n)
        {
                cout << "\nВведите инормацию о " << i + 1 << " сотруднике\n";
                cout << "\nВведите идентификационный номер сотрудника - ";
                cin >> fr[i].id_number;
                cout << "Введите фамилию сотрудника - ";
                cin >> fr[i].surname;
                cout << "Введите имя сотрудника - ";
                cin >> fr[i].name;
                cout << "Введите отчество сотрудника - ";
                cin >> fr[i].patronymic;
                cout << "Введите наименование отдела - ";
                cin >> fr[i].department;
                cout << "Введите должность сотрудника - ";
                cin >> fr[i].post;
                cout << "Введите категорию сотрудника- ";
                cin >> fr[i].category;
                cout << "Введите первоначальную зарплату сотрудника - ";
                cin >> fr[i].salary;
                i++;
        }
}
void firm::output(firm *fr, int n)
{
        int c;
        cout << "\n\nВведите категорию сотрудника (0 - 3) - ";
        cin >> c;
        for(int i = 0; i < n; i++)
        {
            switch(c)
            {
                case 3:
                    if (fr[i].category==3)
                    {
                        cout<<"Категория сотрудников высшая"<<endl;
                        fr[i].salary *= 1.7;
                        cout << "\nИдентификационный номер сотрудника - " << fr[i].id_number << "\n";
                        cout << "Фамилия сотрудника - " << fr[i].surname << "\n";
                        cout << "Имя сотрудника - " << fr[i].name << "\n";
                        cout << "Отчество сотрудника - " << fr[i].patronymic << "\n";
                        cout << "наименование отдела - " << fr[i].department << "\n";
                        cout << "Должность сотрудника - " << fr[i].post << "\n";
                        cout << "Зарплатa сотрудника - " << fr[i].salary << "\n";
                    };
                    break;
                case 2:
                    if (fr[i].category==2)
                    {
                        cout<<"Категория сотрудников первая"<<endl;
                        fr[i].salary *= 1.4;
                        cout << "\nИдентификационный номер сотрудника - " << fr[i].id_number << "\n";
                        cout << "Фамилия сотрудника - " << fr[i].surname << "\n";
                        cout << "Имя сотрудника - " << fr[i].name << "\n";
                        cout << "Отчество сотрудника - " << fr[i].patronymic << "\n";
                        cout << "наименование отдела - " << fr[i].department << "\n";
                        cout << "Должность сотрудника - " << fr[i].post << "\n";
                        cout << "Зарплатa сотрудника - " << fr[i].salary << "\n";
                    };
                    break;
                case 1:
                    if (fr[i].category==1)
                    {
                        cout<<"Категория сотрудников вторая"<<endl;
                        fr[i].salary *= 1;
                        cout << "\nИдентификационный номер сотрудника - " << fr[i].id_number << "\n";
                        cout << "Фамилия сотрудника - " << fr[i].surname << "\n";
                        cout << "Имя сотрудника - " << fr[i].name << "\n";
                        cout << "Отчество сотрудника - " << fr[i].patronymic << "\n";
                        cout << "наименование отдела - " << fr[i].department << "\n";
                        cout << "Должность сотрудника - " << fr[i].post << "\n";
                        cout << "Зарплатa сотрудника - " << fr[i].salary << "\n";
                    };
                    break;
                case 0:
                    if (fr[i].category==0)
                    {
                        cout<<"Сотрудники не имеют категории"<<endl;
                        fr[i].salary *= 0.7;
                        cout << "\nИдентификационный номер сотрудника - " << fr[i].id_number << "\n";
                        cout << "Фамилия сотрудника - " << fr[i].surname << "\n";
                        cout << "Имя сотрудника - " << fr[i].name << "\n";
                        cout << "Отчество сотрудника - " << fr[i].patronymic << "\n";
                        cout << "наименование отдела - " << fr[i].department << "\n";
                        cout << "Должность сотрудника - " << fr[i].post << "\n";
                        cout << "Категория сотрудника - " << fr[i].category << "\n";
                        cout << "Зарплатa сотрудника - " << fr[i].salary << "\n";
                    };
                    break;}
        
}}
 
int main()
{
        setlocale(0,"");
        int n;
        cout << "Введите количество сотрудников - ";
        cin >> n;
 
        firm *fr = new firm[n];
        
        fr->input(fr, n);
        fr->output(fr, n);
 
        delete [] fr; //очищаем память
        
     
        getch();
        return 0;
}
Yandex
Объявления
21.03.2012, 11:06     Создать класс
Ответ Создать тему
Опции темы

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