Пожалуйста решите на языке С++
Найти минимальный элемент последовательности
Входящие данные:
Во входящем потоке первой строки задано целое число N – количество элементов числовой последовательности (0 < N < 100). Во второй строке через пробел перечислены значения элементов целостной последовательности. Значения элементов по модулю не превышают 30 000.
Пример входящего файла (input.txt):
5
3 5 7 3 2
Исходящие данные:
В исходный поток вывести единое целое число.
Пример исходного файла (output.txt):
2
Ответы на вопрос
Відповідь:
#include <iostream>
#include <vector>
#include <limits>
int main() {
int n;
std::cin >> n;
std::vector<int> sequence(n);
for (int i = 0; i < n; i++) {
std::cin >> sequence[i];
}
int min_element = std::numeric_limits<int>::max();
for (int i = 0; i < n; i++) {
if (sequence[i] < min_element) {
min_element = sequence[i];
}
}
std::cout << min_element << std::endl;
return 0;
}
Пояснення:
Сначала мы считываем размер последовательности n и саму последовательность. Затем мы инициализируем переменную min_element максимально возможным значением для типа int (для этого используется стандартная библиотека <limits>). Далее мы проходим по всей последовательности и сравниваем каждый элемент с текущим минимальным элементом. Если какой-то элемент меньше текущего минимального элемента, то мы обновляем значение переменной min_element. В конце мы выводим значение min_element в стандартный поток вывода.
Код можно улучшить, например, можно использовать алгоритм std::min_element из стандартной библиотеки C++, чтобы найти минимальный элемент в последовательности без явного перебора элементов. Но для простоты я использовал простой алгоритм перебора.