
Лекция3.pptx
- Количество слайдов: 17
Циклы
Инкремент (декремент) Инкремент (увеличение) — операция увеличения на единицу или же, в некоторых случаях, на изменяемую величину. Обратную операцию называют декремент (уменьшение). i++; i = i + 1; i--; i = i – 1; i+=3; i = i + 3; i-=3; i = i – 3;
Инкремент (декремент) Префиксная форма записи (++i) int n = 5; if (n++ == 5) { Console. Write. Line("True"); } Постфиксная форма записи (i++) int n = 5; if (++n == 5) { Console. Write. Line("True"); }
Циклы Цикл — управляющая конструкция, предназначенная для организации многократного исполнения набора инструкций. Цикл с предусловием (while) int i = 1; int sum = 0; //пока i<=100 while (i <= 100) { //прибавляем к sum значение переменной i sum += i; //увеличиваем i на 1 i++; }
Циклы Тело цикла – последовательность инструкций, предназначенных для многократное выполнения. Итерация цикла — однократное выполнение тела цикла. Цикл с предусловием (while) int i = 1; int sum = 0; //пока i<=100 while (i <= 100) { //прибавляем к sum значение переменной i sum += i; //увеличиваем i на 1 ло цикла i++; } Те
Цикл с постусловием (do…while) Цикл с постусловием — цикл, в котором условие проверяется после выполнения тела цикла. do { //некоторые действия Console. Write. Line("Нажмите [1] если хотите продолжить. . . "); }while(Console. Read. Key(. Key. Char == '1'))
Циклы Простое логическое выражение string line = Console. Read. Line(); while (line != "0") { //некоторые действия line = Console. Read. Line(); } Присваивание с одновременной проверкой значения string line; while ((line = Console. Read. Line()) != "0") { //некоторые действия }
Цикл со счётчиком — цикл, в котором некоторая переменная(счётчик) изменяет своё значение от заданного начального значения до конечного значения с некоторым шагом. int sum = 0; for (int i = 1; i <= 100; i++) { sum += i; }
Циклы Задача: Нахождение суммы всех чисел от 0 до 100, кратных 5 Неоптимизированный вариант for (int i = 0; i < 100; i++) { if (i%5==0) Console. Write. Line(i*i); } Оптимизированный вариант for (int i = 5; i < 100; i+=5) { Console. Write. Line(i*i); }
Бесконечные (безусловные) циклы Бесконечный цикл while (true) { Console. Write. Line("Hello!!!!!"); } Бесконечный цикл for (; ; ) { Console. Write. Line("Hello!!!!!"); }
Прерывание циклов (оператор break) int n = 0; for (; ; ) { Console. Write. Line("Hello!!!!!"); n++; if (n > 1000) break; }
Оператор continue for (; ; ) { int num 1 = Convert. To. Int 32(Console. Read. Line()); int num 2 = Convert. To. Int 32(Console. Read. Line()); if (num 2 == 0) continue; Console. Write. Line("Сумма чисел равна {0}", num 1 + num 2); } for (; ; ) { int num 1 = Convert. To. Int 32(Console. Read. Line()); int num 2 = Convert. To. Int 32(Console. Read. Line()); if (num 2 != 0) { Console. Write. Line("Сумма чисел равна {0}", num 1 + num 2); } }
Тест из 10 -ти вопросов. Определить на сколько вопросов ответили верно. Random rnd = new Random(); for (int i = 0; i < 10; i++) { int n 1 = rnd. Next(0, 100); int n 2 = rnd. Next(0, 100); Console. Write. Line("{0}+{1}=? ", n 1, n 2); int n. Answer = Convert. To. Int 32(Console. Read. Line()); if (n 1 + n 2 != n. Answer) break; }
Тест из 10 -ти вопросов. Определить на сколько вопросов ответили верно. Random rnd = new Random(); int q = 0; for (int i = 0; i < 10; i++) { int n 1 = rnd. Next(0, 100); int n 2 = rnd. Next(0, 100); Console. Write. Line("{0}+{1}=? ", n 1, n 2); int n. Answer = Convert. To. Int 32(Console. Read. Line()); if (n 1 + n 2 != n. Answer) break; q++; } Console. Write. Line(q);
Тест из 10 -ти вопросов. Определить на сколько вопросов ответили верно. int i; for (i=0; i < 10; i++) { int n 1 = rnd. Next(0, 100); int n 2 = rnd. Next(0, 100); Console. Write. Line("{0}+{1}=? ", n 1, n 2); int n. Answer = Convert. To. Int 32(Console. Read. Line()); if (n 1 + n 2 != n. Answer) break; } Console. Write. Line(i);
Перебор всех вариантов пароля string letters = "abc"; for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { for (int k = 0; k < 3; k++) { Console. Write. Line(letters[i]. To. String() + letters[j]. To. String() + letters[k]. To. String()); } } }