Описание блок-схемы (словесно и фигурами)
1. Начало
Фигура: Овал (или эллипс)
Описание: Старт программы
2. Объявление переменных
Фигура: Параллелограмм (или прямоугольник с закругленными углами)
Действие:
csharp
double a = 0; // сумма положительных элементовint b = 0; // количество положительных элементовdouble c = 1; // произведение положительных элементов
Описание: Инициализация переменных
3. Цикл перебора элементов массива
Фигура: Блок ромб (условие), внутри которого цикл
Описание:
"Для каждого элемента num в массиве A"
4. Проверка: элемент > 0?
Фигура: Ромб
Условие: if (num > 0)
5. Если да
Действия внутри условия:
Фигура: Прямоугольник
Действие:
csharp
a += num;c *= num;b++;
Описание:
Добавление к сумме, умножение произведения, увеличение счётчика
Перейти к следующему элементу массива (повтор цикла)
6. Если нет
Действие: пропуск этих действий (просто перейти к следующему элементу)
7. После завершения цикла
Фигура: Овал (конец цикла)
Описание:
"Все элементы перебраны"
8. Проверка: есть ли положительные элементы?
Фигура: Ромб
Условие: if (b == 0)
9. Если b == 0
Действие:
Фигура: Параллелограмм
Текст: Вывести сообщение: "В массиве нет положительных элементов."
Перейти к завершению
10. Если b != 0
Действия:
Фигура: Прямоугольник
Текст:
csharp
double arithmeticMean = a / b; double geometricMean = Math.Pow(c, 1.0 / b);
Вычисление среднего арифметического и геометрического
11. Вывод результатов
Фигура: Параллелограмм
Текст:
csharp
Console.WriteLine($"Среднее арифметическое: {arithmeticMean:F2}");Console.WriteLine($"Среднее геометрическое: {geometricMean:F2}");
Описание: Вывод двух значений
12. Конец
Фигура: Овал
Описание: Завершение программы
Итоговая схема в виде последовательности фигур:
[Овал: Начало]
|
[Параллелограмм: Объявление переменных]
|
[Ромб: Для каждого num в массиве A]
|
[Ромб: num > 0?]
/ \
Да Нет
| \
[Прямоугольник: a += num; c *= num; b++;]
| \
[Следующий элемент] \
| |
--Возврат-- ---------|
|
[Ромб: b == 0?]
/ \
Да Нет
| |
[Параллелограмм: Вывести сообщение]
| |
[Конец]
|
[Прямоугольник: Вычислить средние]
|
[Параллелограмм: Вывести результаты]
|
[Овал: Конец]