Классы с примеры программ с массивами

Массивы в C#. Часть 1. Одномерные массивы. Примеры решения задач на одномерные массивы

Поиск на других ресурсах:

1. Что такое массив в языке программирования?

Массив – это объединенная в единое целое группа переменных одного типа к которым можно обращаться по единому имени. Использование массивов в программе позволяет удобно организовывать наборы данных и осуществлять упрощенный доступ к этим данным с помощью имени массива и индекса.

2. Какие виды массивов могут быть представлены в C#?

Язык программирования C# позволяет представлять два вида массивов:

  • одномерные массивы;
  • многомерные массивы.

В многомерных массивах различаются двумерные и многомерные прямоугольные массивы. Кроме того, язык программирования C# имеет средства для организации работы с так называемыми ступенчатыми массивами.

3. Какие преимущества использования массивов в программах?

Использование массивов в программах имеет такие основные преимущества:

Массив объектов класса. Динамический. Статический. Создание Особенности. ООП C++ Для начинающих #96

  • удобство и простота организации однотипных наборов данных;
  • удобство обработки данных (сортировка, поиск, проведение вычислений) с помощью операторов цикла языка C#.

4. Каким образом в языке C# организовано представление массивов?

В языке C# массивы организованы в виде объектов. Это означает, что для массива обязательно может быть выделена память с помощью оператора new .

5. Какая общая форма объявления одномерного массива?

Общая форма объявления одномерного массива следующая

тип имя_массива = new тип[размер];

  • тип – тип элементов массива;
  • имя_массива – непосредственно имя объявляемого массива;
  • размер – количество элементов массива. Нумерация элементов массива начинается с нуля.

6. Примеры объявления одномерных массивов разных типов и размерностей

Пример 1. Объявление одномерного массива из 100 целых чисел (тип int ).

// пример объявления массива из 100 целых чисел — способ 1 int[] A; // объявить переменную типа «массив целых чисел» A = new int[100]; // выделить память для переменной A

Пример 2. Объявление одномерного массива из 50 вещественных чисел (тип double ).

// объявление массива из 50 вещественных чисел — способ 2 float[] B = new float[50];

7. Каким образом осуществляется доступ к элементам одномерного массива? Пример

Доступ к элементам одномерного массива осуществляется с помощью индекса.

Индекс определяет положение элемента в массиве. Первым индексом массива есть индекс, который имеет значение 0. Чтобы получить доступ к элементу массива с помощью индекса, нужно взять индекс элемента в квадратные скобки.

Пример 1. Доступ к элементам массива целых чисел (тип long ).

// объявление массива целых чисел, имеющих тип long long[] M = new long[20]; // в массиве 20 элементов // записать в элементы массива произвольные значения M[2] = 23990; // в элемент с индексом 2 записать число 23990 M[0] = 10000; // в элемент с индексом 0 записать число 10000 M[19] = -2039; // Ошибка! // M[20] = 1000; // ошибка! Индекс выходит за пределы диапазона

Пример 2. Объявление и заполнение произвольными значениями массива из 10 вещественных чисел типа float.

Что такое класс. Что такое объект класса. Экземпляр класса это. Класс ООП это. Урок #73


// объявление массива из 10 вещественных чисел float[] B = new float[10]; // заполнение произвольными значениями int i; for (i = 0; i < 10; i++) B[i] = i + 2 * i; // B[i] — элемент в позиции i массива B // вывод элементов массива в элемент управления типа ListBox listBox1.Items.Clear(); for (i = 0; i < 10; i++) listBox1.Items.Add(B[i].ToString());

8. Пример обнуления одномерного массива из 100 вещественных чисел

// обнуление одномерного массива из 100 вещественных чисел // объявить массив double[] D = new double[100]; // обнулить массив for (int i = 0; i < D.Length; i++) // D.Length — количество элементов в массиве D[i] = 0;

9.

Пример поиска заданного элемента в одномерном массиве
// поиск заданного элемента в одномерном массиве int[] A = new int[10]; bool f_is; // результат: если f_is=true, то элемент присутствует в массиве // заполнение массива произвольными значениями for (int i = 0; i < 10; i++) A[i] = i + i * i; int num; // num — искомый элемент num = 42; // поиск f_is = false; for (int i = 0; i < 10; i++) if (num == A[i]) f_is = true;

10. Пример подсчета количества вхождений заданного элемента в одномерном массиве целых чисел

В примере осуществляется подсчет количества вхождений заданного значения (сохраняется в переменной n ) в массиве M . Результат записывается в переменную k .

// подсчет количества вхождений заданного элемента в одномерном массиве int[] M; M = new int[20]; // заполнение массива произвольными значениями for (int i = 0; i < 20; i++) M[i] = i * 2 — i * i; int n; // заданный элемент int k; // результат — количество вхождений n = 0; k = 0; for (int i = 0; i < 20; i++) if (n == M[i]) k++; // k = 2

11. Пример сортировки элементов одномерного массива методом вставки

// сортировка методом вставки по возрастанию // объявление массива из 10 вещественных чисел float[] A = new float[10]; // заполнение элементов массива произвольными значениями // . // сортировка for (int i=0; ifor (int j=i; j>=0; j—) if (A[j] > A[j + 1]) < float t = A[j]; A[j] = A[j + 1]; A[j + 1] = t; >

12. Какая общая форма инициализации одномерного массива?

В языке C# массив может быть инициализирован значениями при его создании (объявлении). Общая форма инициализации массива:

тип[] имя_массива = < значение1, значение2, . значениеN >;

  • тип – тип элементов массива;
  • имя_массива – непосредственно имя массива;
  • значение1 , значение2 , значениеN – значения, которыми инициализируются элементы массива в порядке индексирования. Значение1 будет присвоено ячейке массива с индексом 0. Значение2 будет присвоено ячейке массива с индексом 1 и т.д. ЗначениеN будет присвоено ячейке массива с индексом N-1 .

В случае инициализации массива отпадает необходимость использовать оператор new . Система автоматически выделит необходимый объем памяти для массива.

Читайте также:
Программа безопасности игры работает с ошибками pubg 0x7f47fffe

13. Пример инициализации одномерных массивов при их объявлении

// инициализация массива состоящего из 6 элементов типа uint uint[] UI = < 5, 2, 100, 50, 35, 64 >; // инициализация массива состоящего из 5 элементов типа bool bool[] B = < true, false, false, false, true >; // инициализация массива состоящего из 10 элементов типа float float[] F = < 0.2f, 1.03f, -3.2f, -4.3f, 2.88f, 0.001f, 1.1f, 2.34f, 0.2f, 0f >; // инициализация массива состоящего из 5 элементов типа char char[] C = < ‘0’, ‘A’, ‘;’, ‘\’, ‘z’ >;

14. Пример объявления и использования одномерного массива структур

Дополнительную информацию о работе с массивами структур можно получить в теме:

Пусть задан тип структуры BOOK , описывающей информацию о книге

// структура, описывающая книгу struct BOOK < public string title; // название книги public string author; // название автора книги public int year; // год издания public float price; // цена >

Тогда код, который объявляет массив структур типа BOOK будет иметь приблизительно следующий вид

// объявление и использование одномерного массива структур BOOK[] B; // объявление переменной типа «массив структур BOOK» B = new BOOK[5]; // выделение памяти для 5 структур типа BOOK // заполнение значениями массива B B[0].title = «Beginning. Microsoft.

Visual C# 2008.»; B[0].author = «Karli Watson, Christian Nagel, Jacob Hammer Pedersen, Jon D.Reid»; B[0].year = 2008; B[0].price = 9.99f; B[1].title = «Pro C# 2010 and the .Net Planform. Fifth edition»; B[1].author = «Andrew Troelsen»; B[1].year = 2010; B[1].price = 9.99f;

15. Что происходит, если в программе не придерживаться границ массива?

Язык программирования C# строго придерживается допустимых границ массива, которые задаются при его объявлении. Если при доступе к элементам массива, значение индекса выходит за пределы массива, то возникает исключительная ситуация типа IndexOutOfRangeException . В этом случае программа преждевременно завершится.

16. Пример объявления и использования одномерного массива классов

Пусть в отдельном модуле задается описание класса MyPoint , который описывает точку на координатной плоскости

// класс, который описывает точку на координатной плоскости class MyPoint < // координаты точки int x; int y; // свойства public int X < get < return x; > set < x = value; > > public int Y < get < return y; > set < y = value; > > >

Тогда, объявление и использование массива из 5 объектов типа MyPoint будет иметь приблизительно следующий вид

// объявление массива из 5 объектов типа класс «MyPoint» // выделение памяти для массива MyPoint[] MP = new MyPoint[5]; // выделение памяти для любого объекта — обязательно! for (int i = 0; i < 5; i++) MP[i] = new MyPoint(); // использование массива объектов в программе // заполнение массива произвольными значениями for (int i = 0; i

Связанные темы

  • Многомерные массивы. Ступенчатые массивы
  • Ссылки на массивы. Свойство Length. Присваивание массивов
  • Неявно типизированные массивы. Ключевое слово var
  • Использование массивов в структурах. Массивы структур. Вложенные структуры. Копирование структур

Источник: www.bestprog.net

Класс Массив, описывающий одномерный массив

Написать класс «массив». Реализовать в классе такие методы:

  • конструктор по умолчанию, конструктор с параметрами, конструктор копии;
  • деструктор;
  • поиск элемента в массиве по ключу;
  • сортировка элементов по возрастанию;
  • ввод с клавиатуры и вывод на экран (в виде методов класса и при помощи перегруженных операций потокового ввода и вывода);
  • перегрузить следующие операции:
    + (поэлементное сложение);
    += (добавление элемента в конец массива);
    – (удаление элемента по ключу);
    = (присвоение);
    == (сравнение по элементам);
    [] (взятие элемента с заданным индексом).

CppStudio.com

Размер массива myArray1: 10 Элементы массива myArray1, после его создания: 0 0 0 0 0 0 0 0 0 0 Размер массива myArray2: 15 Элементы массива myArray2, после его создания: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Введите 10 чисел: 1 9 2 8 3 7 4 6 5 0 Введенный массив: 1 9 2 8 3 7 4 6 5 0 Введите 15 чисел: -2 -3 4 1 -5 0 0 9 12 34 5 16 17 11 22 Введенный массив: -2 -3 4 1 -5 0 0 9 12 34 5 16 17 11 22 Размер массива myArray3: 10 1 9 2 8 3 7 4 6 5 0 -2 -3 4 1 -5 0 0 9 12 34 5 16 17 11 22 Массивы myArray1 и myArray2 не равны! Элемент массива myArray1: 0 Массив myArray4: -4 -6 8 2 -10 0 0 18 24 68 10 32 34 22 44 Массив myArray4 + 8: -4 -6 8 2 -10 0 0 18 24 68 10 32 34 22 44 111 112 113 -4 -6 8 2 -10 0 0 18 24 68 10 32 34 22 44 Искомый элемент не найден! -10 -6 -4 0 0 2 8 10 18 22 24 32 34 44 68

Заголовочный файл array.h класса Array .

#ifndef ARRAY_H #define ARRAY_H #include #include using std::istream; using std::ostream; class Array < friend istream > (istream ); // перегруженный оператор ввода friend ostream &operator; #endif // ARRAY_H

Исполняемый файл array.cpp класса Array .

#include «array.h» #include using std::cout; // пространство имен std для cout using std::cin; // пространство имен std для cin #include // для манипулятора setw using std::setw; // пространство имен std для setw #include Array::Array() // конструктор по умолчанию, без параметров < size = 10; // по умолчанию размер массива = 10 элементов ptr = new int [size]; // выделить место в памяти для массива for (int ix = 0; ix < size; ix++) // обнуляем массив ptr[ix] = 0; >Array::Array(int arraySize) // конструктор с параметрами < // если значение параметра больше 0, присвоить size значение arraySize, иначе — 10 size = (arraySize >0 ? arraySize : 10); ptr = new int [size]; // выделить место в памяти для массива for (int ix = 0; ix < size; ix++) // обнуляем массив ptr[ix] = 0; >Array::Array( const Array ptr = new int [size]; // выделить место в памяти для массива for (int ix = 0; ix < size; ix++) ptr[ix] = arrayToCopy.ptr[ix]; // заполняем массив значениями массива arrayToCopy >Array::~Array() // десструктор класса Array < delete [] ptr; // освободить память, удалив массив >int Array::getSize() const // возвратить количество элементов массива < return size; >// перегруженный оператор ввода, для ввода значений массива с клавиатуры istream > (istream obj) < for (int ix = 0; ix < obj.size; ix++) input >> obj.ptr[ix]; // заполняем массив объекта obj return input; // позволяет множественный ввод, типа cin >> x >> y >> z >> . > // перегруженный оператор вывода для класса Array (вывод элементов массива на экран) ostream for (int ix = 0; ix < size; ix++) cin >> ptr[ix]; // ввод элемента массива с клавиатуры > void Array::getArray() // вывод массива < for (int ix = 0; ix < size; ix++) cout const Array right) // оператор присваивания < if ( if (size != right.size) < delete [] ptr; // освободить пространство size = right.size; // установить нужный размер массива ptr = new int [size]; // выделить память под копируемый массив >for (int ix = 0; ix < size; ix++) ptr[ix] = right.ptr[ix]; // скопировать массив >return *this; // разрешает множественное присваивание, например x = t = e > bool Array::operator== (const Array if (size != right.size) return false; // массивы с разным количеством элементов for (int ix = 0; ix < size; ix++) if (ptr[ix] != right.ptr[ix]) return false; // массивы не равны return true; // массивы равны >int if(subscript < 0 || subscript >= size) < std::cerr return ptr[subscript]; // возврат ссылки на элемент массива > Array Array::operator+ (const Array if (size != right.size) < cout Array result(size); for (int ix = 0; ix < size; ix++) result.ptr[ix] = ptr[ix] + right.ptr[ix]; return result; // вернуть сумму >Array number) // оператор добавления элемента в конец массива < Array result(size); result = *this; // временно сохраним текущий массив delete [] ptr; // освобождаем память size = size + 1; // увеличиваем размер массива на 1 ptr = new int [size]; // выделяем память for (int ix = 0; ix < (size — 1); ix++) ptr[ix] = result.ptr[ix]; // скопировать массив ptr[size — 1] = number; // добавляем число в конец массива return *this; // каскадный вызов перегруженного оператора >Array key) // оператор удаления элемента по ключу < int counterKey = 0; // счетчик найденных ключевых элементов // определяем количество элементов, которые необходимо удалить for (int ix = 0; ix < size; ix++) < if (ptr[ix] == key) counterKey++; >Array temp(size); temp = *this; // сохраняем текущий массив во временный объект delete [] ptr; // jосвобождае память size = size — counterKey; // переопределяем размер ptr = new int [size]; int counter = 0, ix = 0; while (counter < size) < if (temp[counter] != key) < ptr[ix] = temp.ptr[counter]; // скопировать массив ix++; >counter++; > return *this; > int Array::search(const int key) const // поиск по ключу < for (int ix = 0; ix < size; ix++) if ( key == ptr[ix] ) // поиск по ключу return (ix + 1); // позиция искомого элемента return -1; >void Array::choicesSort() // сортировка выбором < for (int repeat_counter = 0; repeat_counter < size; repeat_counter++) < int temp = ptr[0]; // временная переменная для хранения значения перестановки for (int element_counter = repeat_counter + 1; element_counter < size; element_counter++) < if (ptr[repeat_counter] >ptr[element_counter]) < temp = ptr[repeat_counter]; ptr[repeat_counter] = ptr[element_counter]; ptr[element_counter] = temp; >> > >

Читайте также:
Совокупность программ хранящихся в долговременной памяти компьютера называется как

Файл с функцией main() . В этом файле я постарался протестировать все возможности класса.

#include using namespace std; #include «array.h» int main() < Array myArray1; // 10-ти элементный объект класса Array, по умолчанию Array myArray2(15); // 15-ти элементный объект класса Array cout > myArray2; // заполнение массива с помощью перегруженного оператора ввода // введенный массив cout << «Введенный массив: » << myArray2; Array myArray3(myArray1); // создаем объект класса Array, используя конструктор копирования cout << «Размер массива myArray3: » << myArray1.getSize() << endl; cout << myArray3; // вывод элементов массива myArray3 = myArray2; // присваиваем массиву myArray3 массив myArray2 cout << myArray3; // вывод элементов массива myArray3 if (myArray1 == myArray2) cout << «Массивы myArray1 и myArray2 равны!n»; else cout << «Массивы myArray1 и myArray2 не равны!n»; // вывод элемента массива, используя перегруженную операцию взятия индекса cout << «Элемент массива myArray1: » << myArray1[myArray1.getSize() -1] << endl; Array myArray4 = myArray2 + myArray3; // перегруженная операция сложения cout << «Массив myArray4:n» << myArray4; myArray4 += 111; // добавление элемента 111 в конец массива cout << «Массив myArray4 + 8:n» << ((myArray4 += 112) += 113); // удаляем элементы массива myArray4: 111 112 113 посредством перегруженной операции минус cout << (myArray4 — 111 — 112 — 113); int pos = 0; if ((pos = myArray4.search(30)) != -1) cout << «Позиция искомого элемента: » << pos << endl; else cout << «Искомый элемент не найден!n»; myArray4.choicesSort(); // сортировка по возрастанию cout

Источник: cppstudio.com

Пример создания класса для работы с одномерными массивами

Для практики программирования Вам были предложены Задачи 2, содержащие работу со строками, одномерными и двухмерными массивами.
Полезно эти программы писать в стиле ООП, то есть задается некоторый исходный класс, назовем его ArrayIntOne, с использованием которого далее решаются поставленные задачи.
Вы можете добавлять в этот класс новые методы, либо, наследуя от него дочерний класс, создать новый.

Решение

1. Каждый класс будем сохранять как отдельный файл в общем пространстве имен, например, namespace ArrayIntOne, либо через подключение через директиву using.
2. Исходный класс назовем ArrayInt1, который будет содержать некоторые поля, конструкторы и методы. Естественно, что полями класса будут длина массива n и собственно одномерный массив a[]. Конструкторы класса необходимы для создания массивов разными способами (через ввод с клавиатуры, через генераторы случайных чисел). Методы класса — самые простые (задать или извлечь элемент массива, найти максимальный/минимальный элемент, отсортировать массив). тогда получим

Исходный класс — ArrayInt1

using System; namespace ArrayIntOne < class ArrayInt1 < protected int n; // длина массива protected int[] a; // массив целых чисел // пустой конструктор — нужен для дочернего класса public ArrayInt1() < >// конструктор целочисленного массива длиной N. Элементы массива имеют значения по умолчанию public ArrayInt1(int N) < n = N; a = new int[n]; >// конструктор с генератором случайных чисел от 0 до max public ArrayInt1(int N, int max) < Random rnd = new Random(); n = N; a = new int[n]; for (int i = 0; i < n; i++) a[i] = rnd.Next(max + 1); >// конструктор с генератором случайных чисел от min до max public ArrayInt1(int N, int min, int max) < Random rnd = new Random(); n = N; a = new int[n]; for (int i = 0; i < n; i++) a[i] = rnd.Next(min, max + 1); >// Вывод элементов массива с контролем их наличия public virtual void ArrayInt_Out(string info) < Console.WriteLine(info); if (!(a == null)) // число элементов >0 < foreach (int e in a) Console.Write(e.ToString() + «t»); Console.WriteLine(); >else // число элементов = 0 Console.WriteLine(«Нет элементов » + info); > // Поиск минимального элемента (min) и его номера (k) public virtual int N_min_Array(out int min) < min = a[0]; int k = 0; for (int i = 1; i < n; i++) if (a[i] < min) < min = a[i]; k = i; >return k; > // Поиск максимального элемента (max) и его номера (k) public virtual int N_max_Array(out int max) < max = a[0]; int k = 0; for (int i = 1; i < n; i++) if (a[i] >max) < max = a[i]; k = i; >return k; > // Изменить a[k] на заданный elem (нумерация с 0) public virtual void Set_Element(int k, int elem) < if (k >= 0 k < n) a[k] = elem; >// Извлечь k-й элемент массива (нумерация с 0) public virtual int Get_Element(int k) < if (k >= 0 k < n) return a[k]; else return Int32.MinValue; >// Пузырьковая сортировка по возрастанию(U)/убыванию(D)/без нее. public virtual void BubbleSort(char d) < int temp; switch (d) < case ‘U’: // по возрастанию for (int i = 0; i < n; i++) for (int j = n — 1; j >i; j—) if (a[j — 1] > a[j]) < temp = a[j]; a[j] = a[j — 1]; a[j — 1] = temp; >break; case ‘D’: // по убыванию for (int i = 0; i < n; i++) for (int j = n — 1; j >i; j—) if (a[j — 1] < a[j]) < temp = a[j]; a[j] = a[j — 1]; a[j — 1] = temp; >break; default: // без сортировки break; > > > >

Читайте также:
Как сделать так чтобы программа не запускалась от имени администратора

3. Предположим, что нам нужно изменить или что-либо добавить в этот класс. Но им уже пользуются в других проектах, поэтому эти изменения сделаем в дочернем классе, который назовем ArrayIntOne.Три конструктора оставим без изменений, добавим конструктор для чтения из текстового файла.
Пусть файл данных имеет вид:
7
2
4
1
7
6
5
8
где первое число задает количество элементов массива, а далее в каждой строке по одному записываются эти элементы. Присвойте файлу имя, например, M1.txt, разместите его в папке с программой (exe-файлом). Тогда при запросе имени файла Вам будет достаточно указать его имя без расширения — M1.
Для примера также выполним перегрузку метода Get_Element(int k). Тогда получим класс ArrayIntOne, как дочерний класс от ArrayInt1:

Наследование класса — ArrayIntOne

using System; using System.IO; using System.Text; namespace ArrayIntOne < class ArrayIntOne : ArrayInt1 < public delegate bool IsEqual(int x); // делегат от int x ->bool public int Length // свойство «Число элементов массива» < get < return n; >> // конструкторы без изменений содержимого // могут быть перегружены public ArrayIntOne(int n) : base(n) < >public ArrayIntOne(int n, int max) : base(n, max) < >public ArrayIntOne(int n, int min, int max) : base(n, min, max) < >// конструктор для ввода данных из текстового файла public ArrayIntOne(string info) : base() < Console.WriteLine(info); Console.Write(«Задайте имя текстового файла данных без расширения: «); string file_name = Console.ReadLine() + «.txt»; StreamReader sr; // поток для чтения try < // Чтение чисел из файла без ошибок // связывание с файлом, кодировка символов Юникода sr = new StreamReader(file_name, UTF8Encoding.Default); // чтение 0-й строки (длина массива) string t = sr.ReadLine(); n = Convert.ToInt32(t); a = new int[n]; int i = 0; // счетчик строк // чтение из файла чисел по строке в массив while ((t != null) (i < n)) < t = sr.ReadLine(); // чтение строк a[i] = Convert.ToInt32(t); i++; >// закрытие файла для чтения sr.Close(); > catch (Exception ex) // на случай ошибок < Console.WriteLine(«ОШИБКА: » + ex.Message); >> // конструктор для ввода массива с клавиатуры (если строковый параметр имеет значение «keyboard») — Автор Эд. // или из строки, в которой целые числа (элементы массива) разделены пробелами. // если в строке чисел меньше, чем длина массива, последние элементы массива получают значение по умолчанию // если в строке чисел больше, чем длина массива, последние числа строки не учитываются // если k-й элемент строки нельзя преобразовать в целое число, k-й элемент массива получает значение по умолчанию public ArrayIntOne(int N, string s) < n = N; a = new int[n]; if (s == «keyboard») < Console.WriteLine(«Введите элементов целочисленного массива», n); for (int i = 0; i < n; i++) < Console.Write(«a[]: «, i); a[i] = Convert.ToInt32(Console.ReadLine()); > > else < string[] numbers = s.Split(‘ ‘, StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < n; i++) < if (i < numbers.Length Int32.TryParse(numbers[i], out int b)) a[i] = b; >> > // Для иллюстрации перегрузки метода добавлена только печать строки public override int Get_Element(int k) < Console.WriteLine(«Перегруженный метод Get_Element()»); return base.Get_Element(k); >// Суммирование элементов массива public int Sum() < int sum = 0; foreach (int e in a) sum += e; return sum; >// метод находит все элементы массива удовлетворяющие условию, заданному делегатом (лямбда-выражением) // и возвращает новый экземпляр класса (массив, состоящий из этих элементов) — автор Эд. public ArrayIntOne Find_All(IsEqual fnc) < int b = 0; // число элементов, удовлетворяющих условию foreach (int i in a) if (fnc(i)) b += 1; ArrayIntOne a1 = new ArrayIntOne(b); // инициализация нового массива // заполнение нового массива по условию, задаваемому предикатом b = 0; for (int i = 0; i < n; i++) if (fnc(a[i])) < a1.Set_Element(b, a[i]); b++; >return a1; > > >

Замечу, что для чтения файла понадобились директивы

using System.IO; using System.Text;

4. В решениях задач по основам C# вы часто использовали различные алгоритмы контроля ввода целых чисел. Ранее был написан класс Restricted Integer Number (RIN) — «Ограниченное целое число», который удобно использовать в нашей тестовой программе:

Класс RIN — ограниченное целое число

NEW: Наш Чат, в котором вы можете обсудить любые вопросы, идеи, поделиться опытом или связаться с администраторами.

Источник: c-sharp.pro

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru