Оператор ветвления if

Оператор ветвления if в зависимости от условия позволяет выбрать одно из двух возможных продолжений программы. Схематично этот оператор можно изобразить так, как показано на рисунке ниже:


Формально в терминах языка программирования это можно записать так:

if(Условие)

   Оператор ветви «Да»;

else

   Оператор ветви «Нет»;

Оператор работает следующим образом: вычисляется записанное в круглых скобках выражение-условие, если оно истинно, то выполняется Оператор ветви «Да», если ложното Оператор ветви «Нет». После этого управление передаётся на следующий оператор.

Условиеэто некоторое выражение, имеющее результат логического типа. Условие всегда должно записываться в круглых скобках. Примеры записи условий:

По любой из ветвей оператора if положено записывать только один оператор. Если по логике программы требуется не один, а более операторов, то их с помощью фигурных скобок объединяют в блок. Таким образом, по обеим ветвям можно в итоге записывать любое количество любых операторов. В том числе и ни одного.

Пример 1. Определить, является ли заданное целое число кратным 3.

Возможный текст программы:

using System;

namespace Prim_IF

{

   class Program

   {

      public static void Main(string[] args)

      {

         Console.Write("Задайте n = ");

         int n = int.Parse(Console.ReadLine());

         if(n % 3 == 0)

            Console.WriteLine("Число {0} кратно 3", n);

         else

            Console.WriteLine("Число {0} некратно 3", n);

         Console.Write("Press any key to continue . . . ");

         Console.ReadKey(true);

      }

   }

}


Результаты работы (1-й вариант):

Задайте n = 15

Число 15 кратно 3

Press any key to continue . . .


Результаты работы (2-й вариант):

Задайте n = 10

Число 10 некратно 3

Press any key to continue . . .



Пример 2. Даны три числа: a, b, c. Могут ли эти числа быть длинами сторон треугольника? Если «да», то вычислить его площадь, используя формулу Герона:

         ,   где .

Возможный текст программы:

using System;

namespace Prim_IF_2

{

   class Program

   {

      public static void Main(string[] args)

      {

         double a, b, c, p, s;

         Console.Write("a=");

         a = double.Parse(Console.ReadLine());

         Console.Write("b=");

         b = double.Parse(Console.ReadLine());

         Console.Write("c=");

         c = double.Parse(Console.ReadLine());

         if(a + b > c && b + c > a && a+ c > b)

         {

            Console.WriteLine("Треугольник существует");

            p = (a + b + c) / 2;

            s = Math.Sqrt(p * (p - a) * (p - b) * (p - c));

            Console.WriteLine("s={0}", s);

         }

         else

            Console.WriteLine("Треугольник не существует");

         Console.Write("Press any key to continue . . . ");

         Console.ReadKey(true);

      }

   }

}


Результаты работы (1-й вариант):

a=3

b=4

c=5

Треугольник существует

s=6

Press any key to continue . . .


Результаты работы (2-й вариант):

a=1

b=3

c=10

Треугольник не существует

Press any key to continue . . .



Назад
На верх
Вперёд
Hosted by uCoz