Форум сайта python.su
Добрый день, помогите пожалуйста посчитать вес трубы сложенной из разных диаметров секций и, соответственно с разными массами секций. Делаю так:
g=9,81# ускорение свободного падения
ntryb = int(input('Введите число секций трубы: ')) # ввод числа секций труб
if ntryb = 1:
dtryb1 = int(input(“Введите диаметр секции трубы в милиметрах: ”))
ltryb1 = float(input(“Введите длину секции трубы в метрах: ”))
qtryb1 = float(input(“Введите массу 1 м секции трубы с муфтами в кг (для 25 мм - 4,02 кг/м; для 22 мм - 3,13 кг/м; для 19 мм - 2,33 кг/м ; для 16 мм - 1,72 кг/м: ”))
qtryb = (ltryb1*qtryb1)*g
qtryb = (ltryb1*qtryb1 + ltryb2*qtryb2 + ltrybn*qtrybn)*g # общая формула рассчета веса секций трубы
Дальше сделать для какого-то малого количества секций просто, но если секций много, код очень не ефективный, как сделать универсально, подскажите пожалуйста хотя бы напрвление куда двигаться. Спасибо.
Отредактировано oland19792 (Март 9, 2017 08:55:11)
Офлайн
oland19792не стыкуется что-то
dtryb1 = int(input(“Введите длину секции трубы в милиметрах: ”))
ltryb1 = float(input(“Введите длину секции трубы в метрах: ”))
ves = {} ves['25'] = 4.02 ves['22'] = 3.13 ves['19'] = 2.33 ves['16'] = 1.72 out = [] print u'Введите диаметр длину секций через пробел' print u'разделитель между секциями - запятая' while True: s = raw_input('?') if not s: break out += s.split(',') sum = 0 for i in out: s = i.split(' ') sum += ves[s[0]] * int(s[1]) * 9.81 print sum
Введите диаметр длину секций через пробел
разделитель между секциями - запятая
?22 1,25 2,19 3
?
178.1496
Отредактировано vic57 (Март 8, 2017 07:24:18)
Офлайн
vic57
Извиняюсь, исправил)))
Офлайн
vic57
Спасибо большое друг,буду разбиратся, я практически только начал учить Питон, пока умею только самое простое…
Офлайн
oland19792Для расчета массы g не нужен.
g=9,81# ускорение свободного падения
oland19792Наверное Эффективный
код очень не ефективный, как сделать универсально,
oland19792Не требовать с пользователя бесполезные данные навпример dtryb1. изучить что такое while
хотя бы направление куда двигаться.
Офлайн
doza_and
Спасибо, буду работать)
Офлайн
doza_and
Для расчета массы g не нужен.
Да, я извиняюсь, рассчитать нужно вес
Отредактировано oland19792 (Март 9, 2017 08:56:31)
Офлайн