Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы по программированию.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
172.37 Кб
Скачать

Вопрос№23

Ввод с помощью датчика псевдослучайных чисел:

Объект класса Random, который с помощью метода Next(x) выдает целое число.

Пример. Заполнение целочисленного массива числами в диапазоне от 0 до 999.

Текст обработчика кнопки « Ввод массива»

LabelRez.Text=” “

Int N = Convert.ToInt32(textBoxD.Text)

Int [] arrInt = newInt[N]; объявляем и создаём массив.

Random rnd = new Random(); // генератор случайных чисел.

For(int i=o ; i<N; i++) цикл заполнения массива

arrInt[i] = rnd.Next = (1000);// числа от 0до 999

for(int i=o; i<N; i++) // цикл ввода массива в метку.

labelRez.Text+=arrInt[i].ToString()+”\n”

Примеры выражения для генерации случайных целых чисел в разных диапазонах:

rnd.Next(101)// возвращает числа в диапазоне от 0до 100

rnd.Next(201) -100 ..возвращает числа в диапозоне от -100 до 100

Для действительных чисел:

метод NextDouble() - выдает числа от 0.0 до 1.0.

Заполнение массива действительными числами в диапазоне от [a,b) :

arrDouble[i] = a + rnd.NextDouble()*(b-a);

Если а=0, то

arrDouble[i] = rnd.NextDouble()*b;

Ввод элементов массива с клавиатуры:

Используем элемент textBox, у которого свойство MultiLine=true и задано отображение вертикальной полосы прокрутки ScrollBars = Vertical.

Пример Заполнения целочисленного массива числами с клавиатуры.

Int N = Convert.ToInt32(textBoxArray.Lines.GetLength(0));

Int[] arrInt = new int[N]; объявляем и создаём массив.

for (int i=0: i<N; i++)// цикл заполнения массива

arrInt[i]= Convert.ToInt 32(TextBoxArray.Lines[i])

for(int i=o; i<N; i++) // цикл ввода массива в метку.

labelRez.Text+=arrInt[i].ToString()+”\n”

Вопрос№24

обработки массивов

1 Суммирование двух массивов одинакового размера

2 Суммирование элементов массива

3 Определение числа элементов массива, удовлетворяющих заданному условию

4 Суммирование элементов массива, удовлетворяющих заданному условию

5 Инвертирование массива

6 Формирование массива из элементов другого массива, удовлетворяющих заданному условию

7 Поиск максимального (минимального) элемента в массиве с запоминанием его положения в массиве

8 Поиск заданного элемента в массиве

9 Циклический сдвиг элементов массива

10 Упорядочение Массива

Алгоритм поиска и обработка элемента,удовлетворяющая условию

Шаг 1. Вычисление элемента, что часто предполагает получение значения элемента, ключа элемента и т.д.

Шаг 2. Сравнение элемента с эталоном или сравнение двух элементов (в зависимости от постановки задачи).

Шаг 3. Перебор элементов множества, то есть прохождение по элементам массива.

Проверка наличия/отсутствия элемента, удовлетворяющего условию

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

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

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

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

Во всех четырёх случаях критичным является определение условия, при котором один элемент влияет на всю ситуацию в целом. В первых двух случаях таким условием является наличие элемента, удовлетворяющего условия, а в последних двух случаях – наличие элемента, не удовлетворяющего условию. Необходимо также помнить, что ветвь «иначе» в условном блоке не должна содержать никаких действий – в противном случае результат будет неадекватным.

Наличие одного элемента, влияющего на ситуацию в целом, позволяет организовывать досрочный выход из цикла/циклов при нахождении такого элемента.