Advertisement
Gillito

Untitled

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