Питон. Последовательность состоит из различных натуральных чисел и завершается числом 0....

0 голосов
117 просмотров

Питон. Последовательность состоит из различных натуральных чисел и завершается числом 0. Определите значение второго по величине элемента в этой последовательности. Гарантируется, что в последовательности есть хотя бы два элемента.


Информатика (399 баллов) | 117 просмотров
Дан 1 ответ
0 голосов
Правильный ответ
arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0] # Заполняем элементами массив
a = 0
b = 0
for i in range(len(arr)):
    if arr[i] > a:
        b = a
        a = arr[i]
print(b)
(436 баллов)
0

он ищет 2-й элемент по значению с начала, а надо типа с конца, т.е. предыдущий за максимальным

0

А какой ответ должен быть тогда в списке [2, 1, 0]?

0

должен быть 1, а выдаёт он 0

0

http://pythontutor.ru/lessons/while/problems/seq_second_max/ можете сами попробовать

0

arr = []
while True:
num = int(input())
arr.append(num)
if num == 0:
break
maximum = max(arr)
max2 = 0
for i in range(len(arr)):
if arr[i] > max2 and arr[i] != maximum:
max2 = arr[i]
print(max2)

0

Ну блин, всё сдвинулось :с

0

да я сам сделаю))я не так глуп. сейчас попробую)

0

Да, теперь всё верно.. спасибо большое!)

0

На самом деле, если хочешь научиться кодить, то не списывай чужой код, лучше спрашивай вопросы по алгоритмам, а то так далеко не уйдешь ;)

0

ну, я сначала пишу свой и если долго не получается, то ищу код. в конечно итоге я все-равно его переделываю под себя)