Циклы. Прерывание выполнения цикла
Если в программе один или несколько операндов необходимо выполнить несколько раз, то используют цикл. Каждый из циклов имеет свою специфику, удобство и возможность его применения.
С помощью оператора break можно в любой момент прервать цикл. Например, в следующем примере мы прервем работу цикла, если переменная i станет больше пяти
int i;
for (i = 0; i < 10; i++)
{
if (i > 5)
break;
System.Console.WriteLine("{0}",i);
}
System.Console.ReadLine();
На экран в итоге выведется 0 1 2 3 4 5
Безусловный переход
Имеющийся в С# оператор goto представляет собой оператор безусловного перехода. Когда в программе встречается оператор goto, ее выполнение переходит непосредственно к тому месту, на которое указывает этот оператор. Он уже давно "вышел из употребления" в программировании. Главный недостаток оператора goto с точки зрения программирования заключается в том, что он вносит в программу беспорядок и делает ее практически неудобочитаемой. Для выполнения оператора goto требуется метка — действительный в С# идентификатор с двоеточием. Метка должна находиться в том же методе, где и оператор goto, а также в пределах той же самой области действия.
Пример использования оператора goto:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
// Обычный цикл for выводящий числа от 1 до 5
Console.WriteLine("Обычный цикл for:");
for (int i = 1; i <= 5; i++)
Console.Write("\t{0}",i);
// Реализуем то же самое с помощью оператора goto
Console.WriteLine("\n\nА теперь используем goto:");
int j = 1;
link1:
Console.Write("\t{0}",j);
j++;
if (j <= 5) goto link1;
Console.ReadLine();
}
}
}
Массивы. Одномерные массивы
Массивом называют упорядоченную совокупность одного типа. Каждый элемент массива имеет свой порядковый номер (индекс).
Количество элементов определяет размерность массива. Индексы элементов задаются целочисленным типом данных. Массивы бывают статические и динамические.
Объявление одномерного массива:
тип[ ] имя= new тип [количество элементов];
Объявление массива с отложенной инициализацией:
int[ ] d= new int[5]
Если элементы массива не задали при объявление массива они либо вычисляются, либо вводятся пользователем. Синтаксис объявления динамических массив совпадает с объявлением статических массивов. Выражение задающее количество элементов в динамическом массиве содержит переменные. Значения этих переменных должны быть заданы до объявление массива.
Пример:
static void Main(string[] args)
{
//объявление массивов
int[] x = { 5, 5, 6, 6, 7 };
int[] A = new int[5], B = new int[5], C = new int[5];
int i, j;
const int N = 5;
Random rand = new Random();
for ( i = 0; i < N; i++)
A[i] = rand.Next(10);
for ( i = 0; i < N; i++)
{
Массивы. Динамические массивы
Массивом называют упорядоченную совокупность одного типа. Каждый элемент массива имеет свой порядковый номер (индекс).
Количество элементов определяет размерность массива. Индексы элементов задаются целочисленным типом данных. Массивы бывают статические и динамические. Для статических массивов количество элементов задается константными выражениями, значения которых известны на этапе компиляции программы.
Динамические массивы позволяют определить количество элементов в процессе выполнения программы. Нумерация элементов в массиве начинается с 0. Синтаксис объявления динамических массивов совпадает с объявлением статических массивов. Выражение задающее количество элементов в динамическом массиве содержит переменные. Значения этих переменных должны быть заданы до объявления массива.
Пример:
static void Main(string[] args)
{
//объявление динамического массива A1
Console.WriteLine("Введите число элементов массива A1");
int size = Convert.ToInt32(Console.ReadLine());
int[] A1 = new int[size];
for (int i = 0; i < size; i++)
{
Console.Write("Введите элемент " + (i + 1) + ": ");
A1[i] = Convert.ToInt32(Console.ReadLine());
}
Console.Write("\n\nРезультат: \n");
for (int i = 0; i < size; i++)
Console.Write(" " + A1[i]);
Console.ReadKey();
}