Добавил:
донатики - https://qiwi.com/n/1ZOMBIE1 Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1 семестр / Лб5

.docx
Скачиваний:
10
Добавлен:
10.12.2022
Размер:
129.67 Кб
Скачать

МИНОБРНАУКИ РОССИИ

Федеральное государственное образовательное учреждение высшего

образования

«Юго-Западный государственный университет»

Кафедра программной инженерии

Лабораторная работа №5

По дисциплине «Языки программирования»

Выполнил: студент группы ИБ-01б

Бунина А.В.

Проверила: доцент

Белова Т.М.

Курск, 2020

Задание 1. Дан целочисленный массив а[15]. Найдите наибольшее из нечетных чисел и количество четных чисел в массиве а[15]. Предусмотрите ситуацию, когда нечетных чисел в последовательности нет.

1.2 Текст программы

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

long c = 0;

int[] array = new int[15];

Random rnd = new Random();

for (int i = 0; i < array.Length; i++)

{

array[i] = rnd.Next(10, 99);

textBox3.Text += Convert.ToString(array[i] + " ");

}

int max = int.MinValue;

for (int i = 0; i < array.Length; i++)

{

if (array[i] % 2 != 0 && array[i] > max)

{

max = array[i];

}

else

{

textBox2.Text = Convert.ToString("В массиве нет нечетных чисел");

}

textBox2.Text = Convert.ToString("Наибольшее из нечетных чисел: " + max);

if (array[i] % 2 == 0)

{

c++;

textBox1.Text = Convert.ToString("Количество четных чисел в массиве: " + c);

}

}

}

}

1.3 Результат работы программы

Задание 2. Даны натуральное число n и символьный массив а[n],

в котором хранятся латинские буквы и арабские цифры. Создайте целочисленный массив b, поместив в него только цифры из массива а.

2.2 Текст программы

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

int n = Convert.ToInt32(textBox1.Text);

int[] a = new int[n];

char[] b = new char[n];

int[] c = new int[n];

Random rnd = new Random();

for (int i = 0; i < a.Length; i++)

{

b[i] = Convert.ToChar(rnd.Next('a', 'z' + 1));

c[i] = rnd.Next(0, 9);

textBox2.Text += Convert.ToString(c[i] + " " + b[i] + " ");

}

string d = Convert.ToString(textBox2.Text);

string f = new String(d.Where(Char.IsDigit).ToArray());

textBox3.Text += Convert.ToString(f);

}

}

2.3 Результат работы программы

Ответы на контрольные вопросы.

  1. Может ли массив содержать один элемент?

Ответ: да.

  1. Можно ли во время выполнения программы изменить размер массива?

Ответ: для динамических - да, для статических - нет.

  1. Могут ли элементами некоторого массива быть числа 1, 1.41, 4.98, 30?

Ответ: да.

  1. Верно ли, что тип элементов массива может быть любым?

Ответ: да, но все элементы массива должны быть одного типа.

  1. Может ли типом индекса массива быть тип int или float?

Ответ: да.

  1. Где размещается (в программном стеке или в куче) массив?

Ответ: куча.

  1. Какова структура инициализатора массива?

Ответ: спецификатор типа имя_массива [размерN] ... [размер1] = {список значений};

Пример: int i [10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

  1. Объясните назначение всех элементов цикла foreach. Каково назначение и возможности переменной цикла foreach.

Ответ: цикл foreach предназначен для перебора элементов в контейнерах, в том числе в массивах. Формальное объявление цикла foreach:

foreach (тип_данных название_переменной in контейнер)

{

// действия

}

  1. В чём различия методов Copy() и Clone()?

Ответ: отличие методов Clone() и Copy() заключается в том, что метод Clone() самостоятельно выделяет память под вновь создаваемый массив и заполняет ее копиями элементов, а метод Copy() копирует часть одного массива в другой.

  1. Назовите свойства массивов, унаследованные ими от класса Array.

Ответ: Одномерные массивы наследуют из класса Array несколько свойств, упрощающих работу с массивами.

  • int Length – целочисленное (32 бита) значение, определяющее общее количество элементов экземпляра массива (изменять его нельзя).

  • int Rank – размерность (число измерений) массива.

  1. Чему равно свойство Length для многомерного массива?

Ответ: если массив многомерный, то array.length выведет количество блоков в массиве.

Соседние файлы в папке 1 семестр