Advertisement
kot025

lab 9 - TimeArray.cs

Jun 12th, 2015
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.19 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace ConsoleApplication1
  8. {
  9.     class TimeArray
  10.     {
  11.         Time[] ar;
  12.         int size;
  13.         public int Size
  14.         {
  15.             get { return size; }
  16.             set
  17.             {
  18.                 if (value < 0)
  19.                 {
  20.                     Console.WriteLine("Ошибка. Размерность массива должна быть неотрицательным числом. ");
  21.                     size = 0;
  22.                 }
  23.                 else
  24.                 {
  25.                     size = value;
  26.                 }
  27.             }
  28.         }
  29.  
  30.         public TimeArray()
  31.         {
  32.             ar = null;
  33.             Size = 0;
  34.         }
  35.         public TimeArray(int _size)
  36.         {
  37.             Size = _size;
  38.             ar = new Time[Size];
  39.             Random rnd = new Random();
  40.             for (int i = 0; i < Size; i++)
  41.             {
  42.                 ar[i] = new Time(rnd.Next(0, 24), rnd.Next(0, 60));
  43.             }
  44.         }
  45.         public TimeArray(int _size, bool manual)
  46.         {
  47.             Size = _size;
  48.             ar = new Time[Size];
  49.             for (int i = 0; i < Size; i++)
  50.             {
  51.                 ar[i] = new Time();
  52.                 Console.Write("Элемент {0}: Часов: ", i);
  53.                 ar[i].Hours = Convert.ToInt32(Console.ReadLine());
  54.                 Console.Write("Элемент {0}: Минут: ", i);
  55.                 ar[i].Minutes = Convert.ToInt32(Console.ReadLine());
  56.             }
  57.         }
  58.         public void Show()
  59.         {
  60.             for (int i = 0; i < Size; i++)
  61.             {
  62.                 ar[i].Show();
  63.             }
  64.             Console.WriteLine();
  65.         }
  66.  
  67.         public Time this [int index]
  68.         {
  69.             get
  70.             {
  71.                 if (index >=0 && index < Size && ar != null)
  72.                 {
  73.                     return ar[index];
  74.                 }
  75.                 else
  76.                 {
  77.                     Console.WriteLine("Ошибка. Индекс находился за границами массива или ссылка не указывает на экземляр объекта.");
  78.                     return new Time(0,0);
  79.                 }
  80.             }
  81.             set
  82.             {
  83.                 if (index >= 0 && index < Size && ar != null)
  84.                 {
  85.                     ar[index] = value;
  86.                    
  87.                 }
  88.                 else
  89.                 {
  90.                     Console.WriteLine("Ошибка. Индекс находился за границами массива или ссылка не указывает на экземляр объекта.");
  91.                 }
  92.             }
  93.         }
  94.  
  95.         public void Show(int number)
  96.         {
  97.             if (number > -1 && number < Size)
  98.             {
  99.                 Console.WriteLine("{0:00}:{0:00} ", ar[number].Hours, ar[number].Minutes);
  100.             }
  101.             else
  102.             {
  103.                 Console.WriteLine("В массиве нет элемента с номером " + number);
  104.             }
  105.         }
  106.  
  107.     }
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement