Почему код не соответствует условиям моего оператора if

#python

Вопрос:

Задача состояла в том, чтобы распечатать минимальное число в цикле, и цикл останавливается, когда вводится отрицательное число, однако моя переменная min выводит отрицательное число, которое я использую для остановки цикла

 sum = 0
x = 0
counter = 0
maximum = 0
mini = 0
while x >= 0:
 counter = counter   1
 x = int(input('enter a postive number:'))
  if x > 0:
  sum = sum   x
  avg = sum/counter
 maximum = max(x, maximum)
 mini=min(x,mini)
print(maximum)
print(sum)
print(avg)
print(mini)
 

Комментарии:

1. пожалуйста, исправьте отступ в коде, из-за этого ваш код не работает! Кроме того, всем будет проще, если вы используете соглашение о 4 пробелах для отступа кода python!

Ответ №1:

Я думаю, основываясь на том, как у вас это получается, и на моем понимании того, чего вы пытаетесь достичь, что-то подобное может сработать.

 sum = 0
x = 0
counter = 1
maximum = 0
mini = 0
while x >= 0:
    x = int(input('enter a postive number:'))
    if counter == 1 and x < 0:
        avg = x
        maximum = x
        sum = x
        mini = x
        break
    elif counter == 1:
        mini = x
    if x < 0:
        break
    counter = counter   1
    sum = sum   x
    avg = sum/counter
    maximum = max(x, maximum)
    mini=min(x,mini)
print(maximum)
print(sum)
print(avg)
print(mini)