Назад Вперед Зміст

Цикл foreach

Цикл foreach - універсальний перелічувач для колекцій. Синтаксис:

foreach(<змінна> in <колекція>)

Елемент <змінна> задає тип та ім'я змінної, яка під час роботи циклу foreach прийматиме значення елементів з колекції.

Цикл має наступну семантику: "Для кожного елемента з колекції виконувати".

Оскільки масив можна визначити як колекцію, цей цикл може використовуватись для перебору елементів масиву.

Значення елементів масиву в цьому циклі змінити не можна!

Приклад:

int[] a = new int[] { 61, 2, 55, -9 };
foreach (int i in a) Console.WriteLine(i);

Результат роботи: 61, 2, 55, -9

Тобто виводяться не індекси елементів, а відповідні їм значення.

Приклад 1

Ввести з клавіатури кількість елементів масиву та самі елементи. Знайти:

class Program
{
    static void Main(string[] args)
    {
        // Введення кількості елементів масиву
        Console.WriteLine("Введіть кількість елементів масиву:");
        int n = Convert.ToInt32(Console.ReadLine());
        
        // Створення масиву з нульовою ініціалізацією
        int[] array = new int[n];
        
        // Введення елементів масиву
        Console.WriteLine("Введіть елементи масиву (по одному на рядок):");
        for (int i = 0; i < n; ++i)
            array[i] = Convert.ToInt32(Console.ReadLine());
        
        // Обчислення суми та кількості від'ємних елементів
        long negativeSum = 0;
        int negativeCount = 0;
        
        foreach (int element in array)
        {
            if (element< 0) 
            {
                negativeSum += element;
                negativeCount++;
            }
        }
        
        // Виведення результатів для від'ємних елементів
        Console.WriteLine($"Сума від'ємних елементів = {negativeSum}");
        Console.WriteLine($"Кількість від'ємних елементів = {negativeCount}");
        
        // Пошук максимального елемента
        int maxElement = array[0];
        
        foreach (int element in array)
        {
            if (element> maxElement)
                maxElement = element;
        }
        
        // Виведення максимального елемента
        Console.WriteLine($"Максимальний елемент = {maxElement}");
        
        Console.WriteLine("Натисніть будь-яку клавішу для виходу...");
        Console.ReadKey();
    }
}
Введіть кількість елементів масиву:
5
Введіть елементи масиву (по одному на рядок):
-3
8
-5
12
-1
Сума від'ємних елементів = -9
Кількість від'ємних елементів = 3
Максимальний елемент = 12
Натисніть будь-яку клавішу для виходу...

Назад Вперед Зміст