Табель работника: начало рабочего дня и его окончание - C#
Формулировка задачи:
Здравствуйте , нужна помощь.
Собственно нужно помочь с программой , которая по вводу id будет фиксировать во сколько пришёл работник, id присвоено к фамилии , при повторном вводе , чтобы фиксировалось , время во сколько работник ушёл и высчитывало время , которое он пробыл на работе. Помогите пожалуйста первый раз за бесплатно!
Решение задачи: «Табель работника: начало рабочего дня и его окончание»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections; namespace driv { class Program { static void Main(string[] args) { DateTime T1 = new DateTime(); DateTime T2 = new DateTime(); List<Worker> WorkerList = new List<Worker>(); int counter = 0; do { T1 = DateTime.Now; Console.WriteLine("Введите ID пришедшего работника:"); string id = Console.ReadLine(); counter++; if (id == "Exit") break; int ID = int.Parse(id); Worker w = new Worker(T1, T2, ((Employee)ID).ToString(), ID); WorkerList.Add(w); } while (counter < 4); int counter_l = WorkerList.Count; do { T2 = DateTime.Now; Console.WriteLine("Введите ID ушедшего работника:"); string id = Console.ReadLine(); if (id == "Exit") break; int ID = int.Parse(id); Worker w1=null; foreach (Worker w in WorkerList) { if (((Employee)ID).ToString() == w.Name) { w1 = new Worker(w.t1,w.t2,w.Name,w.ID); break; } } w1.t2 = T2; TimeSpan workTime = w1.t2.Subtract(w1.t1); counter_l--; Console.WriteLine("Работник {0} находился на работе {1}",w1.Name, workTime.ToString(@"hh\:mm\:ss")); } while (counter_l > 0); Console.Read(); } } enum Employee : int { Иванов=01, Петров=02, Сидоров=03, Васильев=04 } class Worker:IEnumerable { public DateTime t1 { get; set; } public DateTime t2 { get; set; } public string Name { get; set; } public int ID { get; set; } public Worker(DateTime T1, DateTime T2, string name, int id) { t1 = T1; t2 = T2; Name = name; ID = id; } public IEnumerator GetEnumerator() { return this.GetEnumerator(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д