
- •Алфавит с# включает:
- •Вопрос№3
- •Вопрос №4
- •Типы данных:
- •Правила преобразования типов
- •Вопрос№5
- •7) Строковые преобразования. Класс Convert:
- •Приоритеты операций:
- •Операции присваивания
- •Вопрос№7
- •Вопрос№8
- •Вопрос№9
- •Вопрос№10
- •Вопрос№11
- •Вопрос№12
- •Вопрос№13
- •Вопрос№16
- •Вопрос№17
- •Вопрос№18
- •Вопрос№20
- •Вопрос№21
- •Вопрос№22
- •Вопрос№23
- •Для действительных чисел:
- •Определение числа элементов массива, удовлетворяющих заданному условию
- •Вопрос№25
- •Вопрос№26
- •Одномерная
Вопрос№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. Перебор элементов множества, то есть прохождение по элементам массива.
Проверка наличия/отсутствия элемента, удовлетворяющего условию
Для проверки наличия в наборе элемента, удовлетворяющего условию, присваиваем целевой переменной значение ложь, затем в цикле/циклах перебираем все элементы набора, и в случае нахождения элемента, удовлетворяющего условию, присваиваем целевой переменной значение истина. После завершения цикла/циклов значение целевой переменной истина означает наличие искомого элемента, значение ложь – отсутствие искомого элемента.
Для проверки отсутствия в наборе элемента, удовлетворяющего условию, присваиваем целевой переменной значение истина, затем в цикле/циклах перебираем все элементы набора, и в случае нахождения элемента, удовлетворяющего условию, присваиваем целевой переменной значение ложь. После завершения цикла/циклов значение целевой переменной истина означает отсутствие искомого элемента, значение ложь – наличие искомого элемента.
Для проверки того, что все элементы набора удовлетворяют условию, присваиваем целевой переменной значение истина, затем в цикле/циклах перебираем все элементы набора, и в случае нахождения элемента, неудовлетворяющего условию, присваиваем целевой переменной значение ложь. После завершения цикла/циклов значение целевой переменной истина означает, что все элементы набора удовлетворяют условию, значение ложь – что есть элементы, неудовлетворяющие условию.
Для проверки того, что не все элементы набора удовлетворяют условию, присваиваем целевой переменной значение ложь, затем в цикле/циклах перебираем все элементы набора, и в случае нахождения элемента, неудовлетворяющего условию, присваиваем целевой переменной значение истина. После завершения цикла/циклов значение целевой переменной истина означает, что не все элементы набора удовлетворяют условию, значение ложь – что все элементы набора удовлетворяют условию.
Во всех четырёх случаях критичным является определение условия, при котором один элемент влияет на всю ситуацию в целом. В первых двух случаях таким условием является наличие элемента, удовлетворяющего условия, а в последних двух случаях – наличие элемента, не удовлетворяющего условию. Необходимо также помнить, что ветвь «иначе» в условном блоке не должна содержать никаких действий – в противном случае результат будет неадекватным.
Наличие одного элемента, влияющего на ситуацию в целом, позволяет организовывать досрочный выход из цикла/циклов при нахождении такого элемента.