1.7. Оператор foreach
Оператор foreach застосовується для перебору елементів у спеціальним чином організованій групі даних. Масив є саме такою групою. Зручність цього виду циклу полягає в тому, що нам не потрібно визначати кількість елементів у групі й виконувати їхній перебір по індексі: ми просто вказуємо на необхідність перебрати всі елементи групи.
Синтаксис оператора:
foreach ( тип ім'я in вираз ) тіло циклу
Ім'я задає локальну стосовно циклу змінну, котра буде по черзі приймати всі значення з масиву вираз (як вираз найчастіше застосовується ім'я масиву або іншої групи даних). У простому або складеному операторі, що представляє собою тіло циклу, виконуються дії зі змінного циклу. Тип змінної повинен відповідати типу елемента масиву.
Наприклад, нехай заданий масив:
int [ ] а = {24, 50, 18, 3, 16, -7, 9, -1 } ;
Вивід цього масиву на екран за допомогою оператора foreach виглядає наступним чином:
foreach ( int х in а ) Console.WriteLine (х);
Цей оператор виконується так: на кожному проході циклу черговий елемент масиву привласнюється змінній х, і над нею здійснюються дії, записані в тілі циклу. Обмеженням оператора foreach є те, що з його допомогою можна тільки переглядати значення в групі даних, але не змінювати їх.
Завдання
Домашня підготовка до роботи
Вивчити синтаксис опису і використання у програмах змінних типу масивів та властивостей, а також індексаторів мови С#.
Скласти блок-схеми алгоритмів та програму мовою С# для роботи з одномірним масивом цілих чисел (вектором). Забезпечити наступні можливості: задання довільних цілих границь індексів при створенні об'єкта; звертання до окремого елемента масиву з контролем виходу за межі масиву; розрахунок за алгоритмом, згідно з завданням, отриманим від викладача за табл. 2; вивід на екран елемента масиву по заданому індексі й усього масиву. Програма повинна демонструвати всі розроблені елементи класу.
Таблиця 2
№ п/п |
Завдання |
1 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: суму від’ємних елементів масиву; добуток елементів масиву, розташованих між максимальним і мінімальним елементами. Упорядкувати елементи масиву за зростанням. |
2 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: суму додатних елементів масиву; добуток елементів масиву, розташованих між максимальним по модулю й мінімальним по модулю елементами. Упорядкувати елементи масиву за спаданням. |
3 |
В одномірному масиві, що складається з п цілочисельних елементів, обчислити: добуток елементів масиву з парними номерами; суму елементів масиву, розташованих між першим й останнім нульовими елементами. Перетворити масив таким чином, щоб спочатку розташовувалися всі додатні елементи, а потім - всі від’ємні (елементи рівні нулю вважати додатними). |
4 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: суму елементів масиву з непарними номерами; суму елементів масиву, розташованих між першим й останнім від’ємними елементами. Стиснути масив, видаливши з нього всі елементи, модуль яких не перевищує одиницю. Елементи, що звільнилися в кінці масиву, заповнити нулями. |
5 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: максимальний елемент масиву; суму елементів масиву, розташованих до останнього додатного елементу. Стиснути масив, видаливши з нього всі елементи, модуль яких перебуває в інтервалі [а, b]. Елементи, що звільнилися в кінці масиву, заповнити нулями. |
6 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: мінімальний елемент масиву; суму елементів масиву, розташованих між першим й останнім позитивними елементами. Перетворити масив таким чином, щоб спочатку розташовувалися всі елементи рівні нулю, а потім - всі інші. |
7 |
В одномірному масиві, що складається з п цілочисельних елементів, обчислити: номер максимального елемента масиву; добуток елементів масиву, розташованих між першим й другим нульовими елементами. Перетворити масив таким чином, щоб у першій його половині розташовувалися елементи, що стояли в непарних позиціях, а в другій половині - елементи, що стояли в парних позиціях. |
8 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: номер мінімального елемента масиву; суму елементів масиву, розташованих між першим й другим від’ємними елементами. Перетворити масив таким чином, щоб спочатку розташовувалися всі елементи, модуль яких не перевищує одиницю, а потім - всі інші. |
9 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: максимальний по модулю елемент масиву; суму елементів масиву, розташованих між першим й другим додатними елементами. Перетворити масив таким чином, щоб елементи рівні нулю розташовувалися після всіх інших. |
10 |
В одномірному масиві, що складається з п цілочисельних елементів, обчислити: мінімальний по модулю елемент масиву; суму модулів елементів масиву, розташованих після першого елемента, рівного нулю. Перетворити масив таким чином, щоб у першій його половині розташовувалися елементи, що стояли в парних позиціях, а в другій половині - елементи, що стояли в непарних позиціях. |
11 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: номер мінімального по модулю елемента масиву; суму модулів елементів масиву, розташованих після першого від’ємного елемента. Стиснути масив, видаливши з нього всі елементи, величина яких перебуває в інтервалі [а, b]. Елементи, що звільнилися в кінці масиву, заповнити нулями. |
12 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: номер максимального по модулю елемента масиву; суму елементів масиву, розташованих після першого додатного елемента. Перетворити масив таким чином, щоб спочатку розташовувалися всі елементи, ціла частина яких лежить в інтервалі [а, b], а потім - всі інші. |
13 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: кількість елементів масиву, що лежать у діапазоні від А до В; суму елементів масиву, розташованих після максимального елемента. Упорядкувати елементи масиву за спаданням модулів. |
14 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: кількість елементів масиву рівних нулю; суму елементів масиву, розташованих після мінімального елемента. Упорядкувати елементи масиву за зростанням модулів. |
15 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: кількість елементів масиву, більших С; добуток елементів масиву, розташованих після максимального по модулю елемента. Перетворити масив таким чином, щоб спочатку розташовувалися всі від’ємні елементи, а потім - всі додатні (елементи рівні нулю вважати позитивними). |
16 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: кількість від’ємних елементів масиву; суму модулів елементів масиву, розташованих після мінімального по модулю елемента. Замінити всі від’ємні елементи масиву їхніми квадратами й упорядкувати елементи масиву за зростанням. |
17 |
В одномірному масиві, що складається з п цілочисельних елементів, обчислити: кількість додатних елементів масиву; суму елементів масиву, розташованих після останнього елемента рівного нулю. Перетворити масив таким чином, щоб спочатку розташовувалися всі елементи, ціла частина яких не перевищує одиницю, а потім - всі інші. |
18 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: кількість елементів масиву, менших С; суму цілих частин елементів масиву, розташованих після останнього від’ємного елемента. Перетворити масив таким чином, щоб спочатку розташовувалися всі елементи, що відрізняються від максимального не більше ніж на 20%, а потім – всі інші. |
19 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: добуток від’ємних елементів масиву; суму додатних елементів масиву, розташованих до максимального елемента. Змінити порядок проходження елементів у масиві на зворотний. |
20 |
В одномірному масиві, що складається з п дійсних елементів, обчислити: добуток додатних елементів масиву; суму елементів масиву, розташованих до мінімального елемента. Упорядкувати по зростанню окремо елементи, що стоять на парних місцях, і елементи, що стоять на непарних місцях. |
21 |
|
22 |
|
23 |
|
24 |
|
25 |
|
26 |
|
27 |
|
28 |
|
29 |
|
30 |
|
Робота в лабораторії
1. Ознайомитися з основними засобами введення, відлагодження та компіляції програми системи програмування С#.
2. Ввести в комп'ютер програму, написану мовою С# згідно з отриманим завданням. Дані для роботи беруться з табл.1 за вказівкою викладача.
3. Відлагодити програму. При необхідності скоригувати блок-схему алгоритму та програму у відповідності з виявленими логічними та синтаксичними помилками.
4. Остаточні версії блок-схеми, програми та отримані результати занести у звіт з лабораторної роботи.
5. Здати та захистити звіт з лабораторної роботи.,
3. ЗМІСТ ЗВІТУ
1. Номер і назва лабораторної роботи.
2. Повний текст завдання.
3. Остаточна версія блок-схеми алгоритму.
4. Список ідентифікаторів констант, змінних, процедур і функцій, використаних у блок-схемі алгоритму і програмі, та їх пояснення.
5. Остаточна версія програми.
6. Результати роботи програми.
7. Висновки по роботі.