Создать класс "Зарплата", в закрытой части которого размещен список объектов с данными о сотрудниках - C#
Формулировка задачи:
Создать класс ЗАРПЛАТА, в закрытой части которого размещен список объектов с данными о сотрудниках, для которых насчитывают зарплату. Объект класса СОТРУДНИК содержит следующие данные: табельный номер, фамилия и имя, отчество, оклад, стаж работы, количество отработанных дней, количество рабочих дней в месяце, начисление (зарплата за отработанные дни, надбавки за стаж работы и т.п.), удержание (в пенсионный фонд, алименты и т.д.). Разработать методы для работы со списком сотрудников - дополнение, корректировка, вытирания записей, начисление зарплаты, поиска данных о зарплате сотрудника.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Number1
{
class ЗАРПЛАТА
{
private int Tab_Num;
private string FIO;
private int Оклад;
private int Стаж;
private int Kol_rab_dney;
private int Kol_rab_dney_za_mes;
private int Начисление;
private int Удержание;
public ЗАРПЛАТА()
{
FIO = "noname";
Tab_Num = Оклад = Стаж = Kol_rab_dney = Kol_rab_dney_za_mes = Начисление = Удержание = 0;
}
public void СОТРУДНИК(int TN, string FIO, int O, int S, int KRD, int KRDZM, int N, int U)
{
this.Tab_Num = TN;
this.FIO = FIO;
this.Оклад = O;
this.Стаж = S;
this.Kol_rab_dney = KRD;
this.Kol_rab_dney_za_mes = KRDZM;
this.Начисление = N;
this.Удержание = U;
}
public void setTN(int TN) { this.Tab_Num = TN; }
public void setFIO(string FIO) { this.FIO = FIO; }
public void setO(int O) { this.Оклад = O; }
public void setS(int S) { this.Стаж = S; }
public void setKRD(int KRD) { this.Kol_rab_dney = KRD; }
public void setKRDZM(int KRDZM) { this.Kol_rab_dney_za_mes = KRDZM; }
public void setN(int N) { this.Начисление = N; }
public void setU(int U) { this.Удержание = U; }
public int getTN() { return this.Tab_Num; }
public string getFIO() { return this.FIO; }
public int getO() { return this.Оклад; }
public int getS() { return this.Стаж; }
public int getKRD() { return this.Kol_rab_dney; }
public int getKRDZM() { return this.Kol_rab_dney_za_mes; }
public int getN() { return this.Начисление; }
public int getU() { return this.Удержание; }
public void Print()
{
Console.WriteLine("Табельный номер\t" + this.Tab_Num + '\n');
Console.WriteLine("Фамилия, имя и отчество\t" + this.FIO + '\n');
Console.WriteLine("Оклад\t" + this.Оклад + '\n');
Console.WriteLine("Стаж\t" + this.Стаж + '\n');
Console.WriteLine("Количество отработаных дней\t" + this.Kol_rab_dney + '\n');
Console.WriteLine("Количество рабочих дней в месяц\t" + this.Kol_rab_dney_za_mes + '\n');
Console.WriteLine("Начисление\t" + this.Начисление + '\n');
Console.WriteLine("Удержание\t" + this.Удержание + '\n');
}
static void Main(string[] args)
{
ЗАРПЛАТА[] obj = new ЗАРПЛАТА[8];
System.Console.WriteLine("Заполнение массива значениями\t");
for (int i = 0; i < 8; i++)
{
Console.WriteLine(i + 1 + "\t");
obj[i] = new ЗАРПЛАТА();
Console.WriteLine("Введите табельный номер\n");
obj[i].setTN(System.Console.ReadLine());
Console.WriteLine("Введите фамилию, имя и отчество\n");
obj[i].setFIO(System.Console.ReadLine());
Console.WriteLine("Введите оклад\n");
obj[i].setO(System.Console.ReadLine());
Console.WriteLine("Введите стаж\n");
obj[i].setS(System.Console.ReadLine());
Console.WriteLine("Введите количество отработаных дней\n");
obj[i].setKRD(System.Console.ReadLine());
Console.WriteLine("Введите количество рабочих дней в месяц\n");
obj[i].setKRDZM(System.Console.ReadLine());
Console.WriteLine("Введите начисленную сумму\n");
obj[i].setN(System.Console.ReadLine());
Console.WriteLine("Введите удержанную сумму\n");
obj[i].setU(System.Console.ReadLine());
}
Console.WriteLine("\t\tВывод всех елементов");
for (int i = 0; i < 8; i++)
{
obj[i].Print();
}
Console.WriteLine("Press key to continue . . . ");
Console.ReadKey(true);
}
}
}
Я не знаю на сколько я правильно сделал. Критика приветствуется
Решение задачи: «Создать класс "Зарплата", в закрытой части которого размещен список объектов с данными о сотрудниках»
textual
Листинг программы
Console.WriteLine("4) Начислить зарплату в выбраной записи.");
//...
Console.WriteLine("0) Продолжить работу.");
switch (k)
{
//...
case 4:
Console.WriteLine("Начислить зарплату в выбраной записи.");
Console.Write("Выберите запись\t");
n = int.Parse(Console.ReadLine());
Console.WriteLine("Начисление\n{0}", obj[n--].Nacislenie);
break;
//...
case 0: break; //правильно или нет???
}