Задача Задача №1563994
А
А
Для решения поставленной задачи на языке C, нам нужно выполнить несколько шагов:
- Считать количество элементов массива.
- Считать сам массив.
- Найти минимальный положительный элемент.
- Вывести минимальный положительный элемент или 0, если положительных элементов нет.
- Вывести элементы массива.
Вот пример кода на языке C, который выполняет все указанные действия:
#include <stdio.h>
int main() {
int n;
// Считываем количество элементов в массиве
scanf("%d", &n);
int a[n]; // Объявляем массив размером n
int min_positive = 1001; // Инициализируем минимальный положительный элемент, значение больше 1000
int has_positive = 0; // Флаг для проверки наличия положительных элементов
// Считываем элементы массива
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
// Проверяем, является ли элемент положительным
if (a[i] > 0) {
has_positive = 1; // Устанавливаем флаг, если найден положительный элемент
if (a[i] < min_positive) {
min_positive = a[i]; // Обновляем минимальный положительный элемент
}
}
}
// Выводим минимальный положительный элемент или 0
if (has_positive) {
printf("%d\n", min_positive);
} else {
printf("0\n");
}
// Выводим элементы исходного массива
for (int i = 0; i < n; i++) {
printf("%d ", a[i]);
}
printf("\n"); // Переход на следующую строку
return 0;
}
Объяснение кода:
- Мы используем
scanfдля ввода данных, сначала читаем количество элементов в массивеn, затем сам массивa. - Переменная
min_positiveинициализируется значением, больше чем любое возможное положительное число (в данном случае 1001). - С помощью цикла
forмы перебираем все элементы массива, проверяем на положительность и обновляем минимальное значение, если настоящий элемент меньше текущегоmin_positive. - В конце программы выводится либо минимальный положительный элемент, либо
0, если таковых нет, и затем печатается сам массив.
Таким образом, программа корректно решает поставленную задачу.