Advertisement
Gillito

Untitled

Jun 16th, 2015
219
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.87 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 ConsoleApplication44
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             DynamicArray dynArray = new DynamicArray();
  14.  
  15.             dynArray.AddToArray(1);
  16.             dynArray.AddToArray(2);
  17.             dynArray.AddToArray(3);
  18.             dynArray.AddToArray(4);
  19.             dynArray.AddToArray(5);
  20.             dynArray.AddToArray(6);
  21.             dynArray.AddToArray(7);
  22.             dynArray.AddToArray(8);
  23.  
  24.             dynArray.ShowArray();
  25.  
  26.             //dynArray.AddIntsToElements(false, 2);
  27.             //dynArray.ShowArray();
  28.  
  29.             dynArray.ReverseInRange(2, 7);
  30.             dynArray.ShowArray();
  31.  
  32.             //dynArray.RemoveInterval(2, 4);
  33.             //dynArray.ShowArray();
  34.  
  35.             //dynArray.RemoveBefore(2);
  36.             //dynArray.ShowArray();
  37.  
  38.             //dynArray.RemoveAfter(4);
  39.             //dynArray.ShowArray();
  40.         }
  41.     }
  42.  
  43.     class DynamicArray
  44.     {
  45.         private int count = 0;
  46.  
  47.         private int[] array = new int[1];
  48.  
  49.         public void AddToArray(int element)
  50.         {
  51.             if (count < array.Length)
  52.                 array[count] = element;
  53.             else
  54.             {
  55.                 int[] tempArray = new int[array.Length * 2];
  56.                 for (int i = 0; i < array.Length; i++)
  57.                     tempArray[i] = array[i];
  58.                 tempArray[count] = element;
  59.                 array = tempArray;
  60.             }
  61.             count++;
  62.         }
  63.  
  64.         public void ShowArray()
  65.         {
  66.             for (int i = 0; i < count; i++)
  67.                 Console.WriteLine(array[i]);
  68.             Console.WriteLine("array.Length " + array.Length);
  69.             Console.WriteLine("Count " + count);
  70.         }
  71.  
  72.         public int[] PublicArray()
  73.         {
  74.             int[] arrayCopy = new int[count];
  75.             for (int i = 0; i < count; i++)
  76.             {
  77.                 arrayCopy[i] = array[i];
  78.             }
  79.             return arrayCopy;
  80.         }
  81.  
  82.         public void ClearArray()
  83.         {
  84.             array = new int[1];
  85.             count = 0;
  86.         }
  87.  
  88.         public void Destroyer(int x)
  89.         {
  90.             for (; x + 1 < count; x++)
  91.                 array[x] = array[x + 1];
  92.             count--;
  93.         }
  94.  
  95.         public void Raverse()
  96.         {
  97.             for (int i = 0; i < count / 2; i++)
  98.             {
  99.                 int x = array[i];
  100.                 array[i] = array[count - 1 - i];
  101.                 array[count - 1 - i] = x;
  102.             }
  103.         }
  104.  
  105.         public void RemoveBefore(int x)
  106.         {
  107.             for (int i = 0; i < count - x; i++)
  108.                 array[i] = array[x + i];
  109.             count -= x;
  110.         }
  111.  
  112.         public void RemoveAfter(int x)
  113.         {
  114.             count = x;
  115.         }
  116.  
  117.         public void RemoveInterval(int startIndex, int endIndex)
  118.         {
  119.             int interval = endIndex - startIndex;
  120.  
  121.             for (int i = startIndex; i < count - startIndex; i++)
  122.                 array[i] = array[i + interval];
  123.             count -= startIndex;
  124.         }
  125.  
  126.         public void ReverseInRange(int startIndex, int endIndex)
  127.         {
  128.             int interval = endIndex - startIndex;
  129.             for (int i = startIndex; i < interval / 2; i++)
  130.             {
  131.                 int x = array[i];
  132.                 array[startIndex] = array[endIndex - 1 - i];
  133.                 array[endIndex - 1 - i] = x;
  134.             }
  135.         }
  136.  
  137.         public void AddIntsToElements(bool choise, int x)
  138.         {
  139.             if (choise == true)
  140.                 for (int i = 0; i < count; i++)
  141.                     array[i] = array[i] + 3;
  142.             else
  143.                 return;
  144.         }
  145.  
  146.         public void Compare(int x)
  147.         {
  148.  
  149.         }
  150.     }
  151. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement