ЦИКЛ FOR
Загальний формат запису циклу for для повторного виконання однієї інструкції має наступний вигляд: 1: for(ініціалізація; умова; ітерація) 2: { 3: інструкція; 4: }
Задача 1. Знайти суму усіх цілих чисел від 1 до 10 включно: Приклад 7. Розв'язання задачі 1. 1: int sum = 0; 2: for (int i = 1; i <= 10; ++i) 3: sum += i; Задача. Знайти суму та добуток чисел від 1 до 10 включно: Приклад 8. Розв'язання задачі 2. 1: int sum = 0; 2: int dob = 1; 3: for (int i = 1; i <= 10; ++i) 4: { 5: sum += i; 6: dob *= i; 7: } Елемент ініціалізація зазвичай є інструкцією присвоєння яка встановлює значення змінної, що управляє циклом. Ця змінна працює як лічильник, який управляє роботою циклу. Елемент умова є виразом типу bool, в якому тестується значення змінної, що управляє циклом. Результат цього тестування визначає виконається цикл for ще раз чи ні. Елемент ітерація - це вираз, який визначає, як змінюється значення змінної, що управляє циклом, після кожної ітерації. Зверніть увагу на те, що всі ці елементи циклу for повинні розділятися крапкою з комою. Цикл for виконуватиметься до тих пір, поки обчислення елементу умова дає істинний результат. Як тільки умова стане хибною, виконання програми продовжиться з інструкції, наступної за циклом for. Змінна, що управляє циклом, може змінюватися як з позитивним, так і з негативним приростом, причому величина цього приросту також може бути будь-якою. Наприклад, наступна програма виводить числа в діапазоні від 50 до - 50 з декрементом, рівним 5.
Приклад 9. Використання циклу for. 1: for(int i = 50; i > -50; i-=5) 2: Console.WriteLine(i); У циклі for управляючих змінних, умов або ітерацій може бути кілька, або може не бути взагалі. Приклад 10. Використання циклу for. 1: static void Main(string[] args) 2: { 3: for(int i = 0, j = 2; i < 10 && j < 5; j++, i+=2) 4: Console.WriteLine("i = {0}, j = {1}", i, j); 5: } Рис. 1. Результат виконання прикладу 10. Приклад 11. Використання циклу for. 1: static void Main(string[] args) 2: { 3: for (int i = 0;;) 4: { 5: i++; 6: Console.Write(" {0} ", i); 7: if (i == 5) 8: break; 9: } 10: } Рис. 2. Результат виконання прикладу 11. Також існує варіант коли цикл може не мати тіла. Таким чином усі операції виконуються у блоці ітерація. Розв’яжемо ту ж саму задачу про знаходження суми від 1 до 10. Приклад 12. Цикл for без тіла. 1: int sum = 0; 2: for (int i = 1; i <= 10; sum += i++);
|