функция усреднения чисел от ввода без ограничений

Расширение комментария @joran в ответ и пример

geom_vline рисует весь путь по сюжету; это его цель. geom_segment будет только рисовать между конкретными конечными точками. Это помогает сделать фрейм данных с соответствующей информацией для рисования линий.

probs <- c(0.25, 0.50, 0.75)
marks <- data.frame(probability = probs,
                    number = sapply(probs, qbirthday, classes=365, coincident=3))

При этом упрощается только переход к перекрестку.

qplot(number,probability,data=subset(pshare,probability<0.99)) +
  geom_segment(data=marks, aes(xend=-Inf, yend=probability)) +
  geom_segment(data=marks, aes(xend=number, yend=-Inf))

enter image description here [/g0]

0
задан Prakash Pazhanisamy 18 January 2019 в 08:11
поделиться

2 ответа

Скорее всего, вы не хотите вызывать input как в условном выражении while, так и в цикле while. Что-то вроде этого, вероятно, то, что вы собираетесь:

a = []
num = int(input())
while num != -1:
    a.append(num)
    num = int(input())

Кроме того, ваше усреднение немного сложнее, чем необходимо. Попробуйте это:

b = sum(a) / len(a)

Конечно, вы столкнетесь с проблемами, если не введете какие-либо числа для усреднения, то есть деления на 0.

0
ответ дан busybear 18 January 2019 в 08:11
поделиться
print("if u wanna quit inputting number, press '-1'")
print("="*60)

a=[]

while True:
    i = int(input())
    if i==-1:
        break
    else:
        a.append(i)

def avrg(a):
    return sum(a)/len(a)

b=avrg(a)
print(b)

Пользовательский ввод из функции input() всегда имеет тип str, поэтому вам необходимо преобразовать его в int перед сравнением if i==-1. В цикле while он продолжает потреблять пользовательский ввод, пока пользователь не введет -1. Сумма списка может быть просто вычислена встроенной функцией sum.

0
ответ дан Prakash Pazhanisamy 18 January 2019 в 08:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: