Сделать код более компактным - C#
Формулировка задачи:
как можно переделать данную запись, но что бы более компактнее?
LifeInTown ob1 = new LifeInTown(2010);//создание события жизнь ob1.addhomo("Ivan0", "Ivanov", 1990, true); ob1.addhomo("Ivan1", "Ivanov", 1992, true); ob1.addhomo("Ivan2", "Ivanov", 1994, true); ob1.addhomo("Ivan3", "Ivanov", 1991, true); ob1.addhomo("Ivan4", "Ivanov", 1954, true); ob1.addhomo("Ivan5", "Ivanov", 1989, true); ob1.addhomo("Ivan6", "Ivanov", 1993, true); ob1.addhomo("Ivan7", "Ivanov", 1997, true); ob1.addhomo("Ivan8", "Ivanov", 2001, true); ob1.addhomo("Ivan9", "Ivanov", 2000, true); ob1.addhomo("Ivan10", "Ivanov", 1985, true); ob1.addhomo("Ivan11", "Ivanov", 1932, true); ob1.addhomo("Ivan12", "Ivanov", 1967, true); ob1.addhomo("Maria0", "Ivanova", 1990, false); ob1.addhomo("Maria1", "Ivanova", 1991, false); ob1.addhomo("Maria2", "Ivanova", 1992, false); ob1.addhomo("Maria3", "Ivanova", 1993, false); ob1.addhomo("Maria4", "Ivanova", 1952, false); ob1.addhomo("Maria5", "Ivanova", 1930, false); ob1.addhomo("Maria6", "Ivanova", 1999, false); ob1.addhomo("Maria7", "Ivanova", 2005, false); ob1.addhomo("Maria8", "Ivanova", 1996, false); ob1.addhomo("Maria9", "Ivanova", 1992, false); ob1.addhomo("Maria10", "Ivanova", 1989, false);
Решение задачи: «Сделать код более компактным»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace lab_5_1 { public class Printing { public void ObrabEvent(object ob1, HomoEventArgs hev) { if (hev.marr == LifeEvent.Совершеннолетие) Console.WriteLine("{0} {1} достиг(ла) совершеннолетия", ((homo)ob1).name, ((homo)ob1).surname);//когда вызывается событие, то оно вызывает вот этот класс за счёт того, что мы объявили в мейне else Console.WriteLine(String.Format("{0} {1} {2}г сочетался(ась) законным браком с {3} {4} {5}г", ((homo)ob1).name, ((homo)ob1).surname, ((homo)ob1).byear, ((homo)ob1).supr.name, ((homo)ob1).supr.surname, ((homo)ob1).supr.byear)); } } static class HomoExtension { public static homo CreateWoman(uint byear, string first, string last = "Ivanova") { return new homo(first, last, byear, false); } public static homo CreateMan(uint byear, string first, string last = "Ivanov") { return new homo(first, last, byear, true); } } class Program { static void Main(string[] args) { LifeInTown ob1 = new LifeInTown(2010);//создание события жизнь uint[] manbyears = { 1990, 1992, 1994, 1991, 1954, 1989, 1993, 1997, 2001, 2000, 1985, 1932, 1967}; uint[] womanbyears = {1990, 1991, 1992, 1993, 1952, 1930, 1999, 2005, 1996, 1992, 1989}; for (int i = 0; i < manbyears.Length; i++) ob1.addhomo(HomoExtension.CreateMan(manbyears[i], "Ivan" + i)); for (int i = 0; i < womanbyears.Length; i++) ob1.addhomo(HomoExtension.CreateWoman(womanbyears[i], "Maria" + i)); Printing print = new Printing(); for (int i = 0; i < ob1.homosize; i++) // ob1[i].obrab2 +=Program_obrab2; ob1[i].event_adult += print.ObrabEvent;//если чел выкинул событие, то мы вызовем for (int i = 0; i < ob1.homosize; i++) // ob1[i].obrab2 +=Program_obrab2; ob1[i].event_marry += print.ObrabEvent;//если чел выкинул событие, то мы вызовем for (int i = 0; i < 20; i++) { Console.WriteLine("Прошёл" + ob1.year + "год"); ob1.life();//вызывает функцию, симулирующую жизнь Console.WriteLine("********************************"); } Console.ReadLine(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д