Advertisement
OOP_exam

lab3_13

Jan 15th, 2017
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.47 KB | None | 0 0
  1. using System;
  2.  
  3. namespace lab3_13
  4. {
  5.     //  Объявить класс, содержащий одномерный целочисленный массив и
  6.     //  функцию, для печати элементов этого массива.Конструктор класса
  7.     //  принимает два параметра – ссылки на массивы(внешние массивы).
  8.     //  Конструктор выделяет память под внутренний массив размерностью
  9.     //  равной сумме размерностей внешних массивов, затем формируются
  10.     //  значения элементов внутреннего массива путем копирования вначале
  11.     //  элементов одного внешнего массивов, а затем второго.
  12.     //  Результирующий массив сортируется. Класс также должен содержать
  13.     //  поля readonly для минимального и максимального элемента массива.
  14.     //  Значения этих полей определяются в результате работы конструктора.
  15.     //  Элементы внешних массивов ввести с клавиатуры. Создать объект
  16.     //  этого класса. Распечатать элементы массива объекта, минимальное и
  17.     //  максимальное значение массива объекта
  18.  
  19.     class IntArray
  20.     {
  21.         int i;
  22.         int j;
  23.  
  24.         public int[] array;
  25.  
  26.         public readonly int maxValue;
  27.         public readonly int minValue;
  28.  
  29.         public int this[int index]
  30.         {
  31.             get
  32.             {
  33.                 return array[index];
  34.             }
  35.  
  36.             set
  37.             {
  38.                 array[index] = value;
  39.             }
  40.         }
  41.  
  42.         public IntArray(int[] firstArray, int[] secondArray)
  43.         {
  44.             int length;
  45.             length = firstArray.Length + secondArray.Length;
  46.             array = new int[length];
  47.  
  48.             for (i = 0; i < firstArray.Length; i++)
  49.                 array[i] = firstArray[i];
  50.  
  51.             for (j = 0, i = firstArray.Length; j < secondArray.Length; j++)
  52.             {
  53.                 array[i] = secondArray[j];
  54.                 i++;
  55.             }
  56.  
  57.             Array.Sort(array);
  58.             minValue = array[0];
  59.             maxValue = array[length - 1];
  60.  
  61.         }
  62.  
  63.         public void PrintArray()
  64.         {
  65.             for (i = 0; i < array.Length; i++)
  66.                 Console.Write(array[i] + " ");
  67.         }
  68.  
  69.  
  70.     }
  71.     class Program
  72.     {
  73.         static void Main(string[] args)
  74.         {
  75.             int i = 0;
  76.             int firstAmount = 0;
  77.             int secondAmount = 0;
  78.  
  79.             Console.Write("Количество элементов первого массива: ");
  80.             firstAmount = Convert.ToInt32(Console.ReadLine());
  81.             Console.Write("Количество элементов массива: ");
  82.             secondAmount = Convert.ToInt32(Console.ReadLine());
  83.  
  84.             int[] firstExternalArray = new int[firstAmount];
  85.             int[] secondExternalArray = new int[secondAmount];
  86.  
  87.             Console.WriteLine("\nВведите элементы первого массива:");
  88.  
  89.             for (i = 0; i < firstExternalArray.Length; i++)
  90.             {
  91.                 Console.Write("{0} элемент: ", i + 1);
  92.                 firstExternalArray[i] = Convert.ToInt32(Console.ReadLine());
  93.             }
  94.  
  95.             Console.WriteLine("\nВведите элементы второго массива:");
  96.  
  97.             for (i = 0; i < secondExternalArray.Length; i++)
  98.             {
  99.                 Console.Write("{0} элемент: ", i + 1);
  100.                 secondExternalArray[i] = Convert.ToInt32(Console.ReadLine());
  101.             }
  102.  
  103.             IntArray firstObject = new IntArray(firstExternalArray, secondExternalArray);
  104.  
  105.             Console.WriteLine("\nПолученный массив массив:");
  106.  
  107.             firstObject.PrintArray();
  108.  
  109.             Console.WriteLine("\n\nМаксимальный элемент: {0}", firstObject.maxValue);
  110.             Console.WriteLine("Минимальный элемент: {0}", firstObject.minValue);
  111.  
  112.             Console.ReadKey(true);
  113.  
  114.         }
  115.     }
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement