Модуль 4 Конструкции
Обзор модуля В этом модуле вы изучите: n Конструкции выбора n Циклические конструкции n Операции перехода в C# Изучение C#/ Модуль 4/ 2 из 23
Занятие 1 - Конструкции выбора На первом занятии, Конструкции выбора, вы научитесь: n Объяснять конструкции выбора и их пользу. n Объяснять конструкции выбора if и if. . else. n Объяснять конструкции выбора if…else if. Формулировать синтаксис и работу вложенных конструкций if. n Формулировать синтаксис и работу операции switch…case. n Изучение C#/ Модуль 4/ 3 из 23
Конструкции выбора n n n Это поддерживаемые C# программные конструкции, которые позволяют управлять течением программы. Они называются конструкциями принятия решений. C# поддерживает следующие конструкции принятия решений: n Конструкция if else n Конструкция if. . else if n Вложенные конструкции if n Конструкция switch…case Изучение C#/ Модуль 4/ 4 из 23
Операция “if” выполнить блок операций после проверки специального логического условия. public int num = -4; n if (num < 0) Начинается с ключевого слова if, после которого { следует условие. Console. Write. Line(“The number is negative”); n Позволяет Пример } Синтаксис Вывод if (condition) { The number is negative. // одна или более операция; } где, condition: булево выражение. statements: исполняемые инструкции, выполняемые, когда булево выражение возвращает true. Изучение C#/ Модуль 4/ 5 из 23
Конструкция “if. . else” 1 -2 n Синтаксис Пример Выполняет блок операций, только если заданное условие истинно. public int num if (condition) = 10; if { (num < 0) { // одна или более операция; } Console. Write. Line(“The блок is negative”); n Начинается с if, затем number кода, затем блок else. } else { { // одна или более операция; n Блок else начинается сnumber is positive”); else, за } Console. Write. Line(“The ключевого слова } которым следует блок операций. Вывод The number is positive. Изучение C#/ Модуль 4/ 6 из 23
Конструкция “if. . else if” 2 -2 Пример Синтаксис Позволяет n проверить несколько условий и выполнить public int num = различные блоки кода для каждого if (condition) 13; if (num < 0) {условия. { // одна или более операция; Console. Write. Line(“The number is negative”); } } else if ((num % 2) == 0) else if (condition) n {Конструкция начинается с операции if, затем { // одна или более Console. Write. Line(“The операций else number is следует несколькооперация; even”); if, за } которыми следует необязательный блок else { { Console. Write. Line(“The number is odd”); // одна или более операция; } n }Условия, заданные в конструкции if. . else if, выполняются последовательно. Вывод The number is odd. Изучение C#/ Модуль 4/ 7 из 23
Вложенные конструкции “if” n Синтаксис Выводконструкции Пример Это из нескольких операций if. if (condition) Bonus amount: 200 { // одна или более операция; n public int yrs. Of. Service = 3; if (condition) public double salary = 1500; { public int bonus = 0; // одна или if (yrs. Of. Service < 5) более операция; if (condition) { if (salary < 500) { { // одна или более операция; bonus = 100; } } } else } Начинается с операции if, которая называется внешней операцией, и содержит несколько операций if, которые называются вложенными операциями. n { Условие внешнего if контролирует выполнение bonus = 200; вложенной операции if. } } else { bonus = 700; } Console. Write. Line(“Bonus amount: “ + bonus); Изучение C#/ Модуль 4/ 8 из 23
Конструкция switch…case n n n Switch - Ключевое слово, за которым следует Вывод Пример целое выражение, заключенное в круглые скобки. В случае проверки точного соответствия, для Thursday замены нескольких операций if можно Case - Ключевое слово, за которым следует использовать switch…case. уникальная целая константа и двоеточие. public int day = 5; switch (day) { case 1: Console. Write. Line(“Sunday”); break; case 2: Console. Write. Line(“Monday”); break; case 3: Console. Write. Line(“Tuesday”); break; case 4: Console. Write. Line(“Wednesday”); break; case 5: Console. Write. Line(“Thursday”); break; case 6: Console. Write. Line(“Friday”); break; case 7: Console. Write. Line(“Saturday”); break; default: Console. Write. Line(“Enter a number between 1 to 7”); break; } Операция switch…case используется тогда, Default - Еcли ни одно из значений case не когда необходимо сравнить переменную с совпало со значением выражения в switch, различными значениями. управление программы передается в блок default. Break - Используется внутри операции switch…case для завершения выполнения последовательности операций. Изучение C#/ Модуль 4/ 9 из 23
Занятие 2 - Циклические конструкции На втором занятии, Циклические конструкции, вы научитесь: n Описывать циклические конструкции. n Формулировать синтаксис и работу цикла while. n n n Формулировать синтаксис и работу цикла do. . while. Формулировать синтаксис и работу цикла foreach. Изучение C#/ Модуль 4/ 10 из 23
Циклические конструкции n n n Циклы позволяют несколько раз выполнить один блок операций. Циклические конструкции также содержат итераторы. C# поддерживает четыре типа циклических конструкций: n Цикл while n Цикл do. . while n Цикл foreach Изучение C#/ Модуль 4/ 11 из 23
Цикл “while” n n n Вывод Пример Синтаксис Используется для повторного выполнения блока кода public (condition) while. Numbers до Even пор, num = 1; условие цикла остается истинным. тех int пока Console. Write. Line(“Even Numbers”); 2 { while (num <= или более операция; 4 // одна 11) { 6 } if ((num % 2) == 0) 8 { где, 10 Console. Write. Line(num); condition: заданное булево выражение. } num = num + 1; } Содержит операцию while(начинается с ключевого слова while, за которым следует логическое условие). После каждой итерации управление возвращается в операцию while и условие снова проверяется для следующего раунда выполнения. Изучение C#/ Модуль 4/ 12 из 23
Цикл “do-while” n Синтаксис Вывод do-while Цикл похож на цикл while. do Even Numbers { 2 n 4 Он// одна или более операция; всегда выполняется хотя } 6 while (condition); 8 условия. 10 бы раз без проверки Пример n Цикл начинается с ключевого слова do, за которым следует блок выполняемых операций. public int num = 1; Console. Write. Line(“Even Numbers”); do { if ((num % 2) == 0) { n Console. Write. Line(num); } num = num + 1; } while (num <= 11); Операция while с условием располагается в конце этого блока. Изучение C#/ Модуль 4/ 13 из 23
Цикл “for” n Синтаксис Вывод Пример Операция for по функционалу похожа на public. Numbers while. int num; Even(initialisation; condition; increment/decrement) операцию for Console. Write. Line(“Even Numbers”); 2 { for (num = 1; num <= 11; num++) 4 // одна или более операция; { 6 } if ((num % 2) == 0) n 8 { где, 10 Console. Write. Line(num); initialisation: инициализация переменной (переменных), } которая используется в условии. } Операции тела цикла выполняются до тех пор, пока условие истинно. condition: Включает условие, которое проверяется перед выполнением операций цикла. increment/decrement: Содержит операции, которые изменяют значения переменной (переменных) для гарантии, что условие, заданное в секции условий, изменится. Изучение C#/ Модуль 4/ 14 из 23
Вложенный цикл “for” n Пример Содержит несколько операций for. public int rows = 2; public int columns = 2; n Когда (int i циклifor заключается внутрь другого for один = 0; < rows; i++) { цикла for (int j = 0; jчто цикл вложенный. for, говорят, < columns; j++) { Console. Write(“{0} “, i*j); } n Цикл for, содержащий другой цикл for, Console. Write. Line(); называется внешним циклом. } n Вывод Внешний цикл for определяет, сколько раз будет 0 вызываться внутренний цикл for. 0 0 1 Изучение C#/ Модуль 4/ 15 из 23
Цикл “foreach” n Пример Синтаксис Он просматривает все значения в заданном public (<datatype> <identifier> “Maria”, foreach и выполняет блок = {in <list>)“Wilson”, списке string[] employee. Namesопераций для каждого “Elton”, “Garry” }; { значения. или более операция; Console. Write. Line(“Employee Names”); // одна foreach (string names in employee. Names) } { где, Console. Write. Line(“{0} “, foreach, которая n Он начинается с операции names); datatype: Определяет тип данных элементов списка } позволяет вам задать подходящее для коллекции элементов. identifier: имя, идентификатор, list: список значений. содержащий. Указывает имя списка. Вывод Employee Names n Пока выполняется цикл foreach, все Maria Wilson элементы, заданные в операции, доступны Elton Garry только для чтения. Изучение C#/ Модуль 4/ 16 из 23
Занятие 3 - Операции перехода в C# На последнем занятии, Операции перехода в C#, вы научитесь: n Описывать операцию jump и ее назначение. n Объяснять операцию break. n Описывать операцию continue. n Описывать операцию goto. n Объяснять операцию return. Изучение C#/ Модуль 4/ 17 из 23
Операции перехода n n n Операции перехода используются для передачи управления из одной точки программы в другую. Операции перехода безоговорочно переводят управление программы в другое место. C# поддерживает четыре типа операций перехода: n n break continue goto return Изучение C#/ Модуль 4/ 18 из 23
Операция “break” n Пример Используется в конструкциях выбора и циклах. public int num. One = 17; public int num. Two = 2; while(num. Two <= num. One-1) n { if(num. One % num. Two == 0) { Console. Write. Line(“Not a Prime Number”); break; } num. Two++; n } if(num. Two == num. One) { Console. Write. Line(“Prime Number”); } Чаще всего используется в конструкции switch. . . case, в циклах for и while. Обозначается ключевым словом break. Вывод Prime Number Изучение C#/ Модуль 4/ 19 из 23
Операция “continue” n Пример Чаще всего используется в циклических Console. Write. Line(“Even numbers in the range of 1 -10”); конструкциях. for (int i=1; i<=10; i++) { if (i % 2 != 0) n Обозначается ключевым словом continue. { continue; } Console. Write(i + завершения текущей итерации n Используется для “ “); } цикла и передачи управления в начало цикла. Вывод Even numbers in the range of 1 -10. 2 4 6 8 10 Изучение C#/ Модуль 4/ 20 из 23
Операция “goto” n Позволяет Пример напрямую выполнить отмеченную операцию или блок операций. public int i = 0; display: n Обозначается ключевым словом goto. Console. Write. Line(“Hello World”); i++; if (i < 5) { goto display; } Вывод Hello Hello World World Изучение C#/ Модуль 4/ 21 из 23
Операция “return” n Пример Используется для возвращения результата public int num = 23; public int yrs. Of. Service = 5; выражения. Console. Write. Line(“Cube 1250; public double salary = of {0} = {1}”, num, Cube(num)); static int Cube(int n) 0; public double bonus = { (yrs. Of. Service <= 5) if n {Используется для возвращения управления в return (n * n); }метод, из 50; bonus = которого текущий метод был вызван. return; } Вывод else n Cube of 23 = 12167 ключевым словом return. {Обозначается bonus = salary * 0. 2; } Console. Write. Line(“Salary amount: “ + salary); n Должна быть последней операцией в методе. Console. Write. Line(“Bonus amount: “ + bonus); Изучение C#/ Модуль 4/ 22 из 23
Заключение n Конструкции выбора n n Циклические конструкции n n Это блоки принятия решений, которые выполняют группы операций в зависимости от значения булева условия. Выполняют блок операций несколько раз, в зависимости от заданного условия. Операции перехода в C# n Передают управление в любую отмеченную операцию или блок программы. Изучение C#/ Модуль 4/ 23 из 23