Задача 3: Поиск порядкового номера числа с максимальным модулем Вам дана последовательность из N целых чисел. Ваша
Задача 3: Поиск порядкового номера числа с максимальным модулем
Вам дана последовательность из N целых чисел. Ваша задача состоит в том, чтобы найти порядковый номер числа с максимальным модулем. Если есть несколько чисел с максимальным модулем, выведите наибольший номер.
Формат входных данных:
В первой строке входного файла записано число N (1≤N≤1000).
Во второй строке через пробел записаны N целых чисел, по модулю не превосходящих 100000.
Формат выходных данных:
Выведите одно число в выходной файл - номер последнего элемента с максимальным модулем.
Пример:
Вход:
5
1 -2 -8 0 8
Выход:
Вам дана последовательность из N целых чисел. Ваша задача состоит в том, чтобы найти порядковый номер числа с максимальным модулем. Если есть несколько чисел с максимальным модулем, выведите наибольший номер.
Формат входных данных:
В первой строке входного файла записано число N (1≤N≤1000).
Во второй строке через пробел записаны N целых чисел, по модулю не превосходящих 100000.
Формат выходных данных:
Выведите одно число в выходной файл - номер последнего элемента с максимальным модулем.
Пример:
Вход:
5
1 -2 -8 0 8
Выход:
Kosmicheskaya_Zvezda_2461 28
Для решения этой задачи мы будем проходиться по всей последовательности чисел и проверять каждое число на его модуль. Мы будем запоминать максимальное значение модуля и соответствующий ему порядковый номер. Если встречается число с бОльшим модулем, мы обновляем максимальное значение модуля и его порядковый номер. По завершении прохода по последовательности мы выводим запомненный порядковый номер.Вот пошаговое решение этой задачи:
1. Считываем число N (количество элементов последовательности) из входного файла.
2. Считываем последовательность целых чисел из входного файла и сохраняем их в массив.
3. Инициализируем переменные `max_mod` (максимальное значение модуля), `max_index` (порядковый номер числа с максимальным модулем) и `current_index` (текущий порядковый номер).
4. Проходимся по каждому элементу последовательности:
- Если модуль текущего числа больше `max_mod`, обновляем `max_mod` и `max_index` значениями текущего числа и текущего порядкового номера соответственно.
- Увеличиваем `current_index` на 1.
5. Выводим значение `max_index` в выходной файл.
Например, для входных данных:
5
1 -2 -8 0 8
мы имеем следующий процесс выполнения:
- `max_mod = 0`, `max_index = 0`, `current_index = 1`
- Текущий элемент: 1. Модуль этого числа равен 1, что больше `max_mod`. Обновляем `max_mod = 1` и `max_index = current_index = 1`.
- `current_index` увеличивается на 1 и становится равным 2.
- Текущий элемент: -2. Модуль этого числа равен 2, что больше `max_mod`. Обновляем `max_mod = 2` и `max_index = current_index = 2`.
- `current_index` увеличивается на 1 и становится равным 3.
- Текущий элемент: -8. Модуль этого числа равен 8, что больше `max_mod`. Обновляем `max_mod = 8` и `max_index = current_index = 3`.
- `current_index` увеличивается на 1 и становится равным 4.
- Текущий элемент: 0. Модуль этого числа равен 0, что меньше `max_mod`. Проходим к следующему элементу.
- `current_index` увеличивается на 1 и становится равным 5.
- Текущий элемент: 8. Модуль этого числа равен 8, что равно `max_mod`. Обновляем только `max_index = current_index = 5`.
- Завершаем проход по последовательности.
- Выводим значение `max_index` в выходной файл.
Таким образом, ответ на данную задачу для входных данных 5 1 -2 -8 0 8 будет равен 5.