Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
0 / 0 / 0
Регистрация: 14.05.2018
Сообщений: 214

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

09.11.2019, 19:04. Показов 2629. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите, пожалуйста!
Создать базовый класс - работник и производные классы - служащий с почасовой
оплатой, служащий с окладом. Определить виртуальную функцию начисления зарплаты.
Для проверки определить массив указателей на базовый класс, которым присваиваются адреса
различных объектов. Начал писать код, но есть ошибки:
C#
1
2
3
4
5
6
7
8
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;}
 
};
Помогите дописать программу!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.11.2019, 19:04
Ответы с готовыми решениями:

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

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

Базовый класс работник. Производные работник на почасовой оплате и на окладе
базовый класс-работник. производные-работник на почасовой оплате и на окладке. Создать 1 базовый класс и несколько производных. Все...

3
 Аватар для Enifan
1846 / 1188 / 501
Регистрация: 14.10.2018
Сообщений: 3,211
09.11.2019, 19:22
Taras99, Указателей в c# не существует, только ссылки
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
class Worker
{
    protected int salary;
    public virtual void Salary(int _salary = 0)
    {
        salary = _salary;
    }
}
 
class WorkerFix : Worker // фиксированный, оклад
{
    public override void Salary(int _salary = 1000)
    {
        salary = _salary;
    }
}
 
class WorkerHour : Worker // почасовой
{
    public override void Salary(int _salary = 120)
    {
        salary = _salary;
    }
}
0
 Аватар для IamRain
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
09.11.2019, 20:41
Enifan, есть подозрение что ТС-у и не на C# нужно написать.

На С# вот:
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
public abstract class Worker
    {
        public string LastName { get; set; }
        public string MiddleName { get; set; }
        public string FirstName { get; set; }
        public string Position { get; set; }
        public string Department { get; set; }
        public string Division { get; set; }
 
        public abstract decimal GetSalary(SalaryAccountingInfo accInfo);
    }
 
    // c окладом
    public class InternalWorker : Worker
    {
        public decimal BaseSalary { get; protected set; }
 
        public InternalWorker(decimal baseSalary)
        {
            BaseSalary = baseSalary;
        }
 
        public override decimal GetSalary(SalaryAccountingInfo accInfo)
        {
            if (accInfo == null) throw new ArgumentNullException(nameof(accInfo));
 
            // переработки не оплачиваются :( Но есть премии.
            return Math.Min(((decimal) accInfo.ActualHours) / accInfo.FormalHours * BaseSalary, BaseSalary) + accInfo.MonthAward;
        }
    }
 
        // аутсорсер ;)
    public class HourlyAccountedWorker : Worker
    {
        public decimal HourRate { get; }
 
        public HourlyAccountedWorker(decimal hourRate)
        {
            HourRate = hourRate;
        }
        public override decimal GetSalary(SalaryAccountingInfo accInfo)
        {
            // переработки оплачиваются, но нет премий
            return accInfo.ActualHours * HourRate;
        }
    }
 
 
    public class SalaryAccountingInfo
    {
        public SalaryAccountingInfo(DateTime month, int actualHours, int formalHours)
        {
            AccountingMonth = month;
            ActualHours = actualHours;
            FormalHours = formalHours;
        }
 
        // month component is used
        public DateTime AccountingMonth { get; private set; }
 
        public int ActualHours { get; private set; }
 
        public int FormalHours { get; private set; }
 
        public decimal MonthAward { get; set; } = 0;
    }
0
0 / 0 / 0
Регистрация: 14.05.2018
Сообщений: 214
10.11.2019, 12:58  [ТС]
IamRain, спасибо! А main дописать не поможете?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.11.2019, 12:58
Помогаю со студенческими работами здесь

Класс: Создать базовый класс «работник фирмы» и производные классы «стажер», «руководящий сотрудник», «директор»...
Всем привет, помогите пожалуйста, я уже всю голову сломал, не знаю как решить ее... Создать базовый класс «работник фирмы» и...

Создать базовый класс «Работник фирмы» и производные классы «Менеджер», «Администратор», «Программист»
Насколько я знаю, то функция наследования убрана в C#,но была в C++. Хотя может и ошибаюсь. Создать базовый класс «Работник фирмы» и...

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

Описать переменную служащий
Описать переменную служащий состоящую из имени, фамилии, отчества служащего, даты рождения, образования, домашнего адреса, профессии....

Описать переменную служащий
Описать переменную служащий ,состоящую из имени, фамилии , отчества служащего , даты рождения , образования,домашнего адреса,профессии....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru