Найти сумму Максимум среди чётных элементов последовательности и Минимум среди нечётных - C (СИ)
Формулировка задачи:
дана последовательность действительных чисел {a1,a2,...an}. Найти max{a2,a4...a2k}+min{a1,a3,...a2k-1}
и как можно обойтись без массивов?...через вектор?
Решение задачи: «Найти сумму Максимум среди чётных элементов последовательности и Минимум среди нечётных»
textual
Листинг программы
#include <stdio.h> int main(void) { unsigned cnt; int min, max, number; printf("Введите несколько чисел и любую букву, когда закончите...\n"); cnt = 0; while ( printf("#%02u> ", cnt + 1) && scanf("%d", &number) == 1 && ++cnt ) { if ( cnt == 1 ) min = number; else if ( cnt == 2 ) max = number; else if ( ( cnt & 1 ) && ( number < min ) ) min = number; else if ( !( cnt & 1 ) && ( number > max ) ) max = number; } if ( cnt < 2 ) { printf("Нужно как минимум два числа!\n"); return 1; } else printf("%d + %d = %d\n", min, max, min + max); return 0; }
Объяснение кода листинга программы
В этом коде выполняются следующие действия:
- Подключение стандартной библиотеки, позволяющей работать с файлами, вводом/выводом и другими основными функциями языка C.
- Объявление переменных:
- cnt - счётчик, который отслеживает количество введённых чисел;
- min - переменная для хранения минимального чётного числа;
- max - переменная для хранения максимального нечётного числа;
- number - переменная для хранения вводимого числа.
- Вывод сообщения с просьбой ввести несколько чисел и завершить ввод буквой.
- Инициализация счётчика cnt нулём.
- Запуск цикла, который продолжается до тех пор, пока пользователь вводит числа и не вводит букву для завершения ввода. В ходе цикла:
- если счётчик равен единице, то в переменную min записывается введённое число;
- если счётчик равен двум, то в переменную max записывается введённое число;
- если счётчик кратен двум и введённое число меньше значения переменной min, то значение переменной min обновляется;
- если счётчик не кратен двум и введённое число больше значения переменной max, то значение переменной max обновляется.
- Если количество введенных чисел меньше двух, то выводится сообщение об ошибке и возвращается код ошибки 1.
- Если счётчик больше или равен двум, то выводится сообщение с суммой максимального и минимального чисел.
- Возвращается код успеха 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д