Advertisement
Guest User

Untitled

a guest
Jan 20th, 2017
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.44 KB | None | 0 0
  1. using System;
  2.  
  3. using static System.Console;
  4.  
  5. using Случайность = System.Random;
  6. using СтроковоеДействие = System.Action<string>;
  7. using СписокДействий = System.Collections.Generic.List<System.Action>;
  8.  
  9. class ЯСделяль
  10. {
  11.     static СтроковоеДействие ПисатьСтроку = WriteLine;
  12.  
  13.     static Func<ConsoleKeyInfo> ЧитатьКлюч = ReadKey;
  14.  
  15.     static СписокДействий СписокДействий = new СписокДействий();
  16.  
  17.     enum Енум { Бумага, Ножницы, Камень }
  18.  
  19.     static ЯСделяль()
  20.     {
  21.         Случайность случайность = new Случайность();
  22.         Енум первый = Енум.Бумага;
  23.         Енум второй = Енум.Бумага;
  24.  
  25.         Int32 результ = -1;
  26.  
  27.         СписокДействий.Add(() =>
  28.         {
  29.             первый = (Енум)случайность.Next(0, 3);
  30.         });
  31.  
  32.         СписокДействий.Add(() =>
  33.         {
  34.             второй = (Енум)случайность.Next(0, 3);
  35.         });
  36.  
  37.         СписокДействий.Add(() =>
  38.         {
  39.             результ = Файт(первый, второй);
  40.         });
  41.  
  42.         СписокДействий.Add(() =>
  43.         {
  44.             ПисатьСтроку($"{первый} vs {второй}: {результ}");
  45.         });
  46.  
  47.         СписокДействий.Add(() =>
  48.         {
  49.             ЧитатьКлюч();
  50.         });
  51.     }
  52.  
  53.     static void Main(string[] args)
  54.     {
  55.         while (true)
  56.         {
  57.             foreach (var действие in СписокДействий)
  58.             {
  59.                 действие();
  60.             }
  61.         }
  62.     }
  63.  
  64.     static int Файт(Енум первый, Енум второй)
  65.     {
  66.         if (первый == Енум.Бумага && второй == Енум.Камень)
  67.         {
  68.             return 1;
  69.         }
  70.  
  71.         if (первый == Енум.Камень && второй == Енум.Бумага)
  72.         {
  73.             return 2;
  74.         }
  75.  
  76.         if (первый > второй)
  77.         {
  78.             return 1;
  79.         }
  80.  
  81.         if (первый == второй)
  82.         {
  83.             return 0;
  84.         }
  85.  
  86.         if (первый < второй)
  87.         {
  88.             return 2;
  89.         }
  90.  
  91.         return -1;
  92.     }
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement