- •Операторы цикла
- •Инструкция goto
- •Инструкция for
- •Использование нескольких управляющих переменных цикла
- •Использование переменных цикла c любым шагом их изменения
- •Инструкция while. . Цикл с предусловием
- •Инструкция do - while Цикл с постусловием
- •Накопление сумм и произведений
- •Безусловные переходы
- •Инструкция foreach
Использование нескольких управляющих переменных цикла
Для управления циклом forможно использовать две и больше переменных. В этом случае инструкции инициализации и итерации для каждой из этих переменных отделяются запятыми.
Пример3.Программа использует цикл, в котором в консоль выводятся последовательности чисел от 0 до 4 (шаг = 1) и от 10 до 6 (шаг = -1).
static void Main(string[] args)
{
int i, j;
for (i = 0, j = 10; i < j; i++, j--)
Console.WriteLine(" i и j : " + i + " " + j);
Console.ReadKey();
}

Использование переменных цикла c любым шагом их изменения
Задача5. Используя оператор выбора, вычислить значения функции:
еслиxизменяется в
интервале 0..10 с шагомdx=1.5

int A;
double x = 0, y, dx = 1.5; ;
M: Console.WriteLine("Введите параметр А ");
A = Convert.ToInt16(Console.ReadLine());
Console.WriteLine(" А=" + A);
Console.WriteLine(" *********************** ");
for (x = 0; x <= 10; x = x + dx)
{
switch (A)
{
case 0: y = Math.Cos(x); break;
case 1: y = (x - 10) * 8; break;
case -1: y = A * 7 * x; break;
default:
{
Console.WriteLine("A введено не верно!");
goto M;
}
}
Console.WriteLine(" * x= {0,4} * y= {1,6:f} *", x, y);
Console.WriteLine(" *********************** ");
}
Console.ReadKey();
Инструкция while. . Цикл с предусловием
Цикл с инструкцией while .. используется в том случае, если последовательность действий надо выполнить несколько раз, причемколичествоповторенийзаранее не известно и может быть определено, только во время работы программы.
Процессы, в которыхколичествоповторенийзаранее не определено, называютсяитерационными. А сами циклы – называютсяитеративными.
В
этом виде цикла условие стоит перед
телом цикла, поэтому этот цикл называют
спредусловием. Тело цикла повторяется,пока выполняется условие. Тело цикла
первый раз выполняется с проверкой
условия.
Форма цикла while с одиночной инструкцией:
while(Условие) инструкция;
В случае повторного выполнения программного блока
формат цикла выглядит следующим образом:
while(Условие)
{
Инструкции тела цикла;
}
Пример1. Программа использует цикл, в котором в консоль выводится последовательность чисел от 0 до 9.
s
tatic
void Main(string[] args)
{
int i = 0;
while (i < 10)
{
Console.WriteLine("i = {0 } ", i);
i = i + 1;
}
Console.ReadKey();
}
Инструкция While выполняется следующим образом:
Сначала вычисляется значение выражения условия.
Если значение выражения условия равно True(истина), то выполняются очередные инструкции тела цикла. После этого снова проверяется выполнение условия. Если условие выполняется, то инструкции цикла выполняются еще раз. И так до тех пор, пока условие не станет ложным (False).
Если значение выражения условия равно False(ложно), то цикл прекращается, выполнение оператора цикла заканчивается и выполняется следующий оператор, предусмотренный программой.
З
адача5.
Вычислить наибольшее положительное
целое число n,
удовлетворяющее условию: 3n5
- 690n
7.
static void Main(string[] args)
{
int n = 1;
while (3*Math.Pow(n,5)-690*n <= 7)
n = n + 1;
Console.WriteLine("n = {0 } ", n-1);
Console.ReadKey();
}

Задача6.Определить число К натуральных чисел, сумма которых не превышает S.

static void Main(string[] args)
{
double sum=0, s; int k = 0;
Console.WriteLine("Введите s");
//ввод данных с клавиатуры
s = Convert.ToDouble(Console.ReadLine());
/*преобразует вводимое с клавиатуры число
в виде строки в вещественный тип данных */
if (s >= 0)
{
while (sum < s)
{
k=k+1;
sum=k*(k+1)/2;
}
Console.Write("Сумма k = {0}", k);
Console.WriteLine(" натуральных чисел s <= {0}", s);
}
else Console.WriteLine("Ошибочный ввод данных, s < 0 " );
Console.ReadKey();
}


