SHOW:
|
|
- or go back to the newest paste.
1 | using System; | |
2 | using System.Collections.Generic; | |
3 | using System.Linq; | |
4 | ||
5 | namespace LinqTrain | |
6 | { | |
7 | class Program | |
8 | { | |
9 | public static void Main() | |
10 | { | |
11 | int yearNow = 2000; | |
12 | List<Stew> stews = new List<Stew>(); | |
13 | for (int i = 0; i < 60; i++) | |
14 | { | |
15 | stews.Add(new Stew()); | |
16 | Console.WriteLine(stews[i].GetInfo(yearNow)); | |
17 | } | |
18 | Console.ReadKey(); | |
19 | Console.Clear(); | |
20 | ||
21 | - | List<Stew> sortList = stews.Where(stew => stew.CheckFreshness(yearNow) == false).ToList<Stew>(); |
21 | + | var listRancidStew = stews.Where(stew => stew.CheckFreshness(yearNow) == false); |
22 | Console.WriteLine($"Год сейчас - {yearNow} \nВывод просроченной тушенки"); | |
23 | - | foreach (var stew in sortList) |
23 | + | foreach (var stew in listRancidStew) |
24 | { | |
25 | Console.WriteLine(stew.GetInfo(yearNow)); | |
26 | } | |
27 | Console.ReadKey(); | |
28 | } | |
29 | } | |
30 | public static class RandomStatic | |
31 | { | |
32 | static private Random _rand = new Random(); | |
33 | static public int GetNext(int min, int max) | |
34 | { | |
35 | return _rand.Next(min, max); | |
36 | } | |
37 | } | |
38 | public class Stew | |
39 | { | |
40 | public string Name { get; private set; } | |
41 | public int ProductionYear { get; private set; } | |
42 | public int ShelfLife { get; private set; } | |
43 | public Stew() | |
44 | { | |
45 | int index = RandomStatic.GetNext(0, 3); | |
46 | Name = new string[] { "Производитель 1", "Производитель 2", "Производитель 3" }[index]; | |
47 | ProductionYear = new int[] { RandomStatic.GetNext(1970, 1975), RandomStatic.GetNext(1976, 1980), RandomStatic.GetNext(1980, 1985) }[index]; | |
48 | ShelfLife = RandomStatic.GetNext(20, 35); | |
49 | } | |
50 | public bool CheckFreshness(int yearNow) | |
51 | { | |
52 | return ProductionYear + ShelfLife > yearNow; | |
53 | } | |
54 | public string GetInfo(int yearNow) | |
55 | { | |
56 | return $"{Name} - Произведена {ProductionYear} - срок годности {ShelfLife} - Истек {!CheckFreshness(yearNow)}"; | |
57 | } | |
58 | } | |
59 | } |