Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 23, 2017 01:32:02

Ich_Shlange
Зарегистрирован: 2017-08-23
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Задача на использование цикла for

Доброго времени суток.Совсем недавно начал интересоваться Python и наткнулся на задачу в одном из интерактивных учебников. Решил её двумя способами, не знаю какой более приемлемый, хочется откинуть плохой код на стадии обучения. Условие и 2 варианта решения прикреплены картинками. Заранее спасибо!)
P.S. В 1-ом варианте int(input()) повторяется 10 раз😅

Отредактировано Ich_Shlange (Авг. 23, 2017 01:40:59)

Прикреплённый файлы:
attachment 2017-08-23_01.31.28.jpg (53,4 KБ)

Офлайн

#2 Авг. 23, 2017 04:01:03

scidam
Зарегистрирован: 2016-06-15
Сообщения: 288
Репутация: +  35  -
Профиль   Отправить e-mail  

Задача на использование цикла for

Не знаю, подразумевает ли слово “дано” в условии задачи, что данные должны вводиться с клавиатуры?!
Мне так решение видится следующим образом:

 integers_as_list = [1,2,3,4,5,6,7,8,9,10]
sum(integers_as_list)
integers_as_string  =  '1,2,3,4,5,6,7,8,9,10'
# integers_as_string = input('Enter a sequence of integers separated by commas:')
sum(map(int, integers_as_string.split(',')))

Отредактировано scidam (Авг. 23, 2017 04:01:36)

Офлайн

#3 Авг. 25, 2017 20:59:49

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

Задача на использование цикла for

если бы я не читал этот учебник и не знал что там еще не проходили списки то мое решение было бы таким

 print(sum([int(input()) for _ in range (10)]))
но с учетом что со списками и функцией sum() там еще не ознакамливали то оптимально решение будет таким всего 1 переменная
 sum = 0
for _ in range(10):
    sum += int(input())
print(sum)
но первый код у вас ужасен. а если надо посчитать 10 000 значений то вы будете столько раз писать int(input())? а зачем во втором вы в 4ой строке еще плюсуете i*0? ее вообще можно не использовать

Отредактировано marvellik (Авг. 25, 2017 21:06:25)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version