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

Создать базовый класс - работник и производные классы - служащий с почасовой оплатой, служащий в штате и служащий с процентной ставкой - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Определить, какое наибольшее число подряд идущих элементов этой последовательности равны друг другу. http://www.cyberforum.ru/cpp-beginners/thread686762.html
Дана последовательность натуральных чисел, завершающаяся числом 0. Определить, какое наибольшее число подряд идущих элементов этой последовательности равны друг другу. Числа, следующие за числом 0, считывать не нужно. Примеры Входные данные|Результат работы 2 1 7 7 9 1
C++ определите количество строк в массиве, которые содержат значение, равное наибольшему. В метании молота состязается n спортсменов. Каждый из них сделал m бросков. Победитель определяется по лучшему результату. Определите количество участников состязаний, которые разделили первое место, то есть определите количество строк в массиве, которые содержат значение, равное наибольшему. Программа получает на вход два числа n и m чисел, являющихся элементами массива. Программа должна... http://www.cyberforum.ru/cpp-beginners/thread686749.html
C++ При запуске выходит ошибка Stack overflow
учусь mfc v2008 с++ пишу программу для заполнения массива цветами пикселей картинки после долгих поисков написал код: HBITMAP bitmap = (HBITMAP)LoadImage(NULL, "1.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_DEFAULTSIZE | LR_COLOR); tagBITMAP BitmapInfo; RGBTRIPLE Bits; GetBitmapBits(bitmap, 1024* 768* (8 / 4),Bits); int a=Bits.rgbtBlue; int b=Bits.rgbtGreen; int...
Количество различных элементов в монотонном массиве C++
Пожалуйста помогите решить сначала задано N - количество элементов в массиве (N не превосходит 100). Далее через пробел записаны N целых чисел - элементы массива отсортированы по неубыванию (каждый элемент массива не меньше предыдущего элемента, например 1,2,2,3,3,3). Необходимо вывести количество различных чисел в этом массиве. Пример. Входящие данные|Результат работы 6 ...
C++ Интерполирование функции заданной таблично http://www.cyberforum.ru/cpp-beginners/thread686737.html
2.Интерполирование функции заданной таблично: х1 х2 х3 х4 х5 ______________________________ у1 у2 у3 у4 у5 с помощью квадратичного уравнения Лагранжа: {L}_{n}\left( x\right)=\left( \frac{\left(x-{x}_{1}\right)\left( x-{x}_{2}\right){y}_{0}}{\left(...
C++ Вывод значений переменных Задача Есть в текстовый файл с таким содержанием ( например ): asd123 = 111 12dsd2 = 222 324asd = 333 ds7sd = 444; 1adf = 555; Выходном файле должно быть: 111 подробнее

Показать сообщение отдельно
gsm180
19 / 11 / 1
Регистрация: 19.10.2012
Сообщений: 100
Записей в блоге: 1
02.11.2012, 16:35     Создать базовый класс - работник и производные классы - служащий с почасовой оплатой, служащий в штате и служащий с процентной ставкой
Не знаю насколько это правильно, но мне так видится эта задача.
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
#include<iostream>
using namespace std;
 
class office{
protected:
    int days;//количство рабочих дней
    int hour;//количиство рабочих часов
    int reg_sal;//сумма в день
    int rate;// оплата в час
    int per_rate;//процент от продаж
    int sam_sale;//сумма продаж
};
 
 
class hour_salary:public office{
public:
    hour_salary(int h, int d, int r){hour=h; days=d; rate=r;}
    int sal_calc(){
        int sal=hour*days*rate;
        return sal;}
};
 
 
class regula_salary:public office{
public:
    regula_salary(int r, int d){reg_sal=r; days=d;}
    int sal_calc(){
        int sal=reg_sal*days;
        return sal;}
 
};
 
 
class percent_salary:public office{
public:
    percent_salary(int p, int s){per_rate=p; sam_sale=s;}
    int sal_calc(){
        int sal=(per_rate*sam_sale)/100;
        return sal;}
};
 
 
 
int main()
{setlocale(0,"rus");
int n;
cout<<"\t\t\tВыберите раздел"<<endl;
cout<<'\n';
cout<<"Почасовая оплата нажмите 1 "<<endl;
cout<<"Штатный служащей нажмите 2 "<<endl;
cout<<"Процентная оплата нажмите 3 "<<endl;
cin>>n;
cout<<"\n-----------------------------------\n";
if(n==1){
int h,d,r;
cout<<"Введите количиство рабочих часов "<<endl;
cin>>h;
cout<<"Введите количство рабочих дней "<<endl;
cin>>d;
cout<<"Введите оплату в час "<<endl;
cin>>r;
hour_salary f(h,d,r);
cout<<"\t\tЗарплата "<<f.sal_calc()<<" рублей"<<endl;}
else if(n==2){
    int r,d;
    cout<<"Введите сумму в день "<<endl;
    cin>>r;
    cout<<"Введите количиство рабочих дней "<<endl;
    cin>>d;
    regula_salary f(r,d);
    cout<<"\t\tЗарплата "<<f.sal_calc()<<" рублей "<<endl;}
else if(n==3){
    int p,s;
    cout<<"Введите процент от продаж "<<endl;
    cin>>p;
    cout<<"Введите сумму продаж "<<endl;
    cin>>s;
    percent_salary f(p,s);
    cout<<"\t\tЗарплата "<<f.sal_calc()<<" рублей "<<endl;}
 
cin.get();
cin.get();
 
    return 0;
}
Добавлено через 32 минуты
Ошибка в почасовой оплате, на дни умножать не нужно. новый вариант
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
#include<iostream>
using namespace std;
 
class office{
protected:
    int days;//количство рабочих дней
    int hour;//количиство рабочих часов
    int reg_sal;//сумма в день
    int rate;// оплата в час
    int per_rate;//процент от продаж
    int sam_sale;//сумма продаж
};
 
 
class hour_salary:public office{
public:
    hour_salary(int h, int r){hour=h; rate=r;}
    int sal_calc(){
        int sal=hour*rate;
        return sal;}
};
 
 
class regula_salary:public office{
public:
    regula_salary(int r, int d){reg_sal=r; days=d;}
    int sal_calc(){
        int sal=reg_sal*days;
        return sal;}
 
};
 
 
class percent_salary:public office{
public:
    percent_salary(int p, int s){per_rate=p; sam_sale=s;}
    int sal_calc(){
        int sal=(per_rate*sam_sale)/100;
        return sal;}
};
 
 
 
int main()
{setlocale(0,"rus");
int n;
cout<<"\t\t\tВыберите раздел"<<endl;
cout<<'\n';
cout<<"Почасовая оплата нажмите 1 "<<endl;
cout<<"Штатный служащей нажмите 2 "<<endl;
cout<<"Процентная оплата нажмите 3 "<<endl;
cin>>n;
cout<<"\n-----------------------------------\n";
if(n==1){
int h,r;
cout<<"Введите количиство рабочих часов "<<endl;
cin>>h;
cout<<"Введите оплату в час "<<endl;
cin>>r;
hour_salary f(h,r);
cout<<"\t\tЗарплата "<<f.sal_calc()<<" рублей"<<endl;}
else if(n==2){
    int r,d;
    cout<<"Введите сумму в день "<<endl;
    cin>>r;
    cout<<"Введите количиство рабочих дней "<<endl;
    cin>>d;
    regula_salary f(r,d);
    cout<<"\t\tЗарплата "<<f.sal_calc()<<" рублей "<<endl;}
else if(n==3){
    int p,s;
    cout<<"Введите процент от продаж "<<endl;
    cin>>p;
    cout<<"Введите сумму продаж "<<endl;
    cin>>s;
    percent_salary f(p,s);
    cout<<"\t\tЗарплата "<<f.sal_calc()<<" рублей "<<endl;}
 
cin.get();
cin.get();
 
    return 0;
}
 
Текущее время: 00:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru