


Помогите исправить код , мне выводит только 0 0
На вход программы поступает последовательность натуральных чисел, которая завершается
числом 0. Определите индекс наименьшего элемента последовательности и выведите его на экран.
Если наибольших элементов несколько, выведите индекс последнего из них.
Формат входных данных
Вводятся натуральные числа <10000, каждое с новой строки.
Формат выходных данных
Выведите ответ на задачу. Номера чисел начинаются с 0.
n = int(input())
t = 0
a = 0
m = 0
while True:
t = t+1
if m>n:
m=n
a=t-1
n = int(input())
if n==0:
break
print(a,m)
Помогите именно исправить
mi, mv = -1, 20000
for i, s in enumerate(iter(input, '0')):
v = int(s)
if v <= mv: mi, mv = i, v
print(mi)
Так наименьшего или наибольшего? У тебя в вопросе фразы противоречат друг другу.
Вариант для наибольшего:
mi, mv = -1, 0
for i, s in enumerate(iter(input, '0')):
v = int(s)
if v >= mv: mi, mv = i, v
print(mi)
n = int(input())
min_val = float('inf') # Инициализация минимального значения бесконечностью
min_index = -1 # Инициализация индекса -1 (чтобы показать, что минимум еще не найден)
index = 0
while n != 0:
if n < min_val:
min_val = n
min_index = index
n = int(input())
index += 1
print(min_index)