Оператор break
С помощью оператора break можно специально организовать немедленный выход из цикла в обход любого кода, оставшегося в теле цикла, а также минуя проверку условия цикла. Когда в теле цикла встречается оператор break, цикл завершается, а выполнение программы возобновляется с оператора, следующего после этого цикла.
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
Оператор continue
С помощью оператора continue можно организовать преждевременное завершение шага итерации цикла в обход обычной структуры управления циклом. Оператор continue осуществляет принудительный переход к следующему шагу цикла, пропуская любой код, оставшийся невыполненным. Таким образом, оператор continue служит своего рода дополнением оператора break.
for (int i=1; i<=10; i++)
{
if (i<9)
{
continue;
}
Console.WriteLine(i);
}
Оператор return
Оператор return организует возврат из метода. Его можно также использовать для возврата значения. Имеются две формы оператора return: одна — для методов типа void, т.е. тех методов, которые не возвращают значения, а другая — для методов, возвращающих конкретные значения.
class ReturnTest
{
static double CalculateArea(int r)
{
double area = r*r*Math.PI;
return area;
}
static void Main()
{
int radius = 5;
double result = CalculateArea(radius);
Console.WriteLine(“The area is {0:0.00}”, result);
Console.WriteLine(“Press any key to exit.”);
Console.ReadKey();
}
}
Оператор goto
Имеющийся в С# оператор goto представляет собой оператор безусловного перехода. Когда в программе встречается оператор goto, ее выполнение переходит непосредственно к тому месту, на которое указывает этот оператор. Он уже давно "вышел из употребления" в программировании. Главный недостаток оператора goto с точки зрения программирования заключается в том, что он вносит в программу беспорядок и делает ее практически неудобочитаемой. Для выполнения оператора goto требуется метка — действительный в С# идентификатор с двоеточием. Метка должна находиться в том же методе, где и оператор goto, а также в пределах той же самой области действия.
Пример использования оператора goto:
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();
}
}
}
Класс Math. Назначение, основные поля и методы. Примеры.
Кроме переменных и констант, первичным материалом для построения выражений являются функции. Класс Math из пространства имен System содержит статические методы для работы с тригонометрическими, логарифмическими и другими математическими функциями. Практически все функции перегружены и принимают различные типы параметров, например: double, float, int и т.д. Этот класс содержит два статических поля, задающих константы E и PI, а также 23 статических метода. Методы задают:
· тригонометрические функции - Sin, Cos, Tan;
· обратные тригонометрические функции - ASin, ACos, ATan, ATan2 (sinx, cosx);
· гиперболические функции - Tanh, Sinh, Cosh;
· экспоненту и логарифмические функции - Exp, Log, Log10;
· модуль, корень, знак - Abs, Sqrt, Sign;
· функции округления - Ceiling, Floor, Round;
· минимум, максимум, степень, остаток - Min, Max, Pow, IEEEReminder.
double angle = 180.0;
double sinAngle = Math.Sin(angle);
double cosAngle = Math.Cos(angle);
double res;
// res = (cos(angle) + x2)/(angle + 1)
res = (Math.Cos(angle) + Math.Pow(x, 2))/(Math.Sqrt(angle) + 1);