Читайте также:
|
|
Формат оператора for:
For (инициализация; логическое выражение; модификации) оператор;
где: for – служебная лексема; инициализация – часть оператора цикла, предназначенная для объявления переменных цикла и присваивания им начальных значений (может быть инициализировано несколько переменных, разделенных запятой), логическое выражение – это выражение типа bool; модификации – часть оператора цикла, предназначенная для описания операций (операторов) изменения параметров цикла (несколько операторов отделяются запятой), оператор – один любой оператор языка (тело цикла).
Суть работы оператора: сначала присваиваются начальные значения переменным (происходит инициализация), затем вычисляется значение логического выражения, если оно true, то выполняется оператор (тело цикла), затем происходит изменение параметров цикла, описанное в части модификации и снова вычисляется значение логического выражения, если оно true, то опять выполняется тело цикла и т.д.; как только значение логического выражения становится false оператор цикла заканчивает свою работу.
Примечание 4: если по условию задачи в теле цикла требуется выполнить два и более операторов, то их необходимо заключить в блок, т.е. в фигурные скобки.
Примечание 5: цикл с параметром реализуется также как цикл с предусловием, т.е. тело цикла выполняется пока истинно логическое выражение.
Рассмотрим использование данного оператора при решении задачи Пример 3. Представим программу, реализующую алгоритм решения данной задачи (см. Примечание 3). Программа стала значительно короче. Самостоятельно сформировать комментарии к программе.
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите значение n"); //1
string s = Console.ReadLine(); //2
int n = Convert.ToInt32(s); //3
long f = 1; //4
for (int i = 1; i <= n; i +=1) f *= i; //5
Console.WriteLine("Значение {0}! = {1}", n, f);//6
}
}
}
Пример 3. Рассмотрим решение задачи (п. 4 наст. лабораторной работы, задание 3б). Написать программу, вычисляющую произведение выражений для параметра k, изменяющегося от 1 до натурального числа n.
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите натуральное число n");
string s1, s = Console.ReadLine();
int n = Convert.ToInt32(s);
Console.WriteLine("Введите вещественное число x");
s1 = Console.ReadLine();
double x = Convert.ToDouble(s1), p = 1;
long f = 1;
for (int k = 1; k <= n; k += 1) { f *= k; p *= (1 + Math.Sin(k * x) / f); };
Console.WriteLine("Значение произведения = {0}", p);
}
}
}
Дата добавления: 2015-07-15; просмотров: 74 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Do оператор while (логическое выражение) | | | Индивидуальные задания |