
- •Общие сведения о программировании Понятие алгоритма и его свойства
- •Константы
- •Класс «Math»
- •Линейные алгоритмы
- •Разветвляющиеся алгоритмы Ветвление и условный оператор
- •Условная операция
- •Оператор переключатель
- •Циклические алгоритмы
- •Циклы со счётчиком
- •Цикл с предусловием
- •Цикл с постусловием
- •Генератор случайных чисел
- •Работа с массивами Пузырьковая сортировка
- •Составные типы данных: структуры
- •Подпрограммы в языке c#. Работа с функциями
- •Работа с файлами
Цикл с предусловием
Формат записи на языке C#
While (условие)
Операторы тела циклов;
Если условие изначально ложно, тело цикла не выполнится ни разу.
Цикл с постусловием
Формат записи на языке C#:
Do
Операторы тела цикла;
While (условие);
Тело цикла выполнится хотя бы один раз.
В циклах с предусловием и пост условием необходимо обязательно изменять параметр внутри цикла, иначе цикл будет выполнятся бесконечно.
Например вывести на экран степени числа 2 не превышающие 10000.
Using System;
Class Example
{
Public static void Main()
{
Int n = 2;
While (<10000)
{
Console.writeline(n);
N *=2;
}
}
}
Using System;
Class Example
{
Public static void Main()
{
Int n=2;
Do
{
Conole.WriteLine(n);
N *= 2;
}
While (n<10000);
}
}
Для досрочного выхода из цикла используется оператор Break.
Оператор continue заставляет пропустить остаток тела цикла и перейти к следующей интеракции.
Операторы цикла взаимозаменяемы.
Циклы могут быть вложены друг в друга
При том следует обращать внимание на размещение внешнего и внутреннего циклов. Зона действия внутреннего цикла должна располагаться в зане действия внешнего цикла.
Ввести N чисел, найти максимальное из них.
Массивы
одномерные – векторы
двумерные – матрицы
многомерные
Описание одномерного массива:
Общий формат:
тип[] имя_массива = new тип[размер]
При описании массивов можно задавать изначальное значение их элементов
Int[] arr = {2,5,7,6,9,10}
Char[] = {‘f’,’g’}
Описание матрицы
Общий формат:
тип[,] имя_массива = new тип[размер1, размер2]
размер1 – строки
размер2 – столбцы
Доступ к элементам массива
Следует различать описание массива и значение его элемента при обработке. Доступ к элементам массива можно получить следующим образом:
Для одномерного массива:
Имя_массива[индекс]
Для матрицы:
Имя_массива[индекс1, индекс2]
Индексом может быть число, переменная или выражение целого типа
Любая программа обработки массива содержит цикл, в котором параметром является индекс. Если индексов несколько, то используются индексы вложены друг в друга. Количество таких циклов зависит от числа индексов.
Foreach
При работе с массивами может использоваться ещё один вид циклов
Он служит для опроса набора коллекции. Коллекция – любая группа элементов.
foreach (тип имя_переменной in массив)
операторы;
Итерационную переменную можно использовать только для чтения. Т.е. с её помощью нельзя изменить содержимое массива.
Цикл foreach работает и с многомерными массивами. Он возвращает элементы в порядке следования строк.
Length
У каждого массива есть свойство Length которое отображает количество элементов которое может хранить массив. Для многомерного массива оно возвращает общее кол-во элементов.
Генератор случайных чисел
Часто для задания значений элементов массива используется генератор случайных чисел.
Создание объекта генератора
Random rnd = new random();
Получение случайного числа:
Rnd.Next(кол_эл)
Работа с массивами Пузырьковая сортировка
Суть алгоритма состоит в последовательном просмотре массива и сравнении каждой пары соседних элементов между собой. При этом неправильное расположение элементов устраняется путём их перестановки(обмена значениями). Процесс просмотра и сравнения элементов повторяется до получения результата.
For (int i=0 ; i<n-1 ; i++)
For (int j=n-1 ; j>I ; j--)
If (a[j] <a[j-1])
{
Int t = a[j];
A[j] = a[j-1];
A[j-1] = t;
}