Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 18, 2022 12:20:15

litvyakovirdeev
Зарегистрирован: 2022-08-18
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

ЦИКЛЫ!ХЭЛП

 years=int(input("Enter quantity years= "))
month=3
total= 0
for y in range(years):
    for m in range(month):
        p_amount=int(input(f"Enter  precipitation amount  in {m+1} month {y+1} year=   ",end=" "))
        total+=p_amount
        print(total)
print(f"Total in  {y+1} years = {total} mm ")

СРЕДНЯЯ ТОЛЩИНА СЛОЯ ДОЖДЕВЫХ ОСАДКОВ
напишите программу, которая применяет вложенные циклы для сбора данных и вычисления средней толщины слоя дождевых осадков за ряд лет.
Программа должна сначала запросить количество лет.Внешний цикл будет выполнять одну итерацию для каждого года.Внутреннй цикл будет делать 12 итераций одну для каждого месяца
Каждая итерация внутреннего цикла запрашивает у пользователя миллиметры дождевых осадков в течение этого месяца.
После всех итераций программа должна вывести количество месяцев,ощее количество миллиметров дождевых осадков и среднюю толщину слоя дождевых осадков в месяц в течение всего периода

Вторая подобная задача и не могу найти решение
как сделать так, что бы после введения данных за все месяцы выводился Итог за все месяцы ТОЛЬКО первого года
Сбор данных за следующий год начинался заново, запрашивал результат за месяцы и. в конце выводил Итог ТОЛЬКО за второй год
После того как количество заданных лет в цикле заполнены, вывести итог за 2 года
Возможно ли это сделать используя только цикл for или нужен цикл while?
P.S month=3 что бы не вводить 12

Офлайн

#2 Авг. 18, 2022 13:54:35

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9890
Репутация: +  854  -
Профиль   Отправить e-mail  

ЦИКЛЫ!ХЭЛП

  
>>> def f():
...     number_of_years = int(input('Enter number of years: '))
...     
...     months_in_year = 12
...     number_of_months = 0
...     total_mm = 0
...     
...     for y in range(number_of_years):
...         for m in range(months_in_year):
...             month_mm = int(input(
...                 'Enter number of millimeters for '
...                 'year {} and month {}: '.format(
...                     y + 1, m + 1)))
...             total_mm += month_mm
...             number_of_months += 1
...     
...     average_mm = total_mm // number_of_months
...     print('For {} years the average number of millimeters is {}.'.format(
...         number_of_years, average_mm))
... 
>>> f()
Enter number of years: 3
Enter number of millimeters for year 1 and month 1: 100
Enter number of millimeters for year 1 and month 2: 250
Enter number of millimeters for year 1 and month 3: 350
Enter number of millimeters for year 1 and month 4: 200
Enter number of millimeters for year 1 and month 5: 128
Enter number of millimeters for year 1 and month 6: 200
Enter number of millimeters for year 1 and month 7: 250
Enter number of millimeters for year 1 and month 8: 190
Enter number of millimeters for year 1 and month 9: 200
Enter number of millimeters for year 1 and month 10: 205
Enter number of millimeters for year 1 and month 11: 185
Enter number of millimeters for year 1 and month 12: 160
Enter number of millimeters for year 2 and month 1: 180
Enter number of millimeters for year 2 and month 2: 200
Enter number of millimeters for year 2 and month 3: 300
Enter number of millimeters for year 2 and month 4: 100
Enter number of millimeters for year 2 and month 5: 200
Enter number of millimeters for year 2 and month 6: 300
Enter number of millimeters for year 2 and month 7: 250
Enter number of millimeters for year 2 and month 8: 180
Enter number of millimeters for year 2 and month 9: 200
Enter number of millimeters for year 2 and month 10: 210
Enter number of millimeters for year 2 and month 11: 250
Enter number of millimeters for year 2 and month 12: 230
Enter number of millimeters for year 3 and month 1: 150
Enter number of millimeters for year 3 and month 2: 140
Enter number of millimeters for year 3 and month 3: 155
Enter number of millimeters for year 3 and month 4: 180
Enter number of millimeters for year 3 and month 5: 200
Enter number of millimeters for year 3 and month 6: 215
Enter number of millimeters for year 3 and month 7: 155
Enter number of millimeters for year 3 and month 8: 160
Enter number of millimeters for year 3 and month 9: 180
Enter number of millimeters for year 3 and month 10: 170
Enter number of millimeters for year 3 and month 11: 175
Enter number of millimeters for year 3 and month 12: 200
For 3 years the average number of millimeters is 197.
>>>



Офлайн

#3 Авг. 18, 2022 17:28:26

litvyakovirdeev
Зарегистрирован: 2022-08-18
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

ЦИКЛЫ!ХЭЛП

Благодарю за ответно вот по поводу второй части мне не понятно:


1)как сделать так, что бы после введения данных за все месяцы первого года выводился Итог за все месяцы ТОЛЬКО первого года
2)Сбор данных за следующий год начинался заново, запрашивал результат за месяцы второго и. в конце выводил Итог ТОЛЬКО за второй год(НЕ ЗА ПЕРВЫЙ И ВТОРОЙ)
3)После того как количество заданных лет в цикле заполнены, вывести итог за 2 года(С ЭТИМ ПОНЯТНО)
4)Возможно ли это сделать используя ТОЛЬКО цикл for или нужен цикл while?
P.S month=3 что бы не вводить 12
вот что я имею ввиду
year1month1=34
year1month2=43
total year1 = 77
year2month1=…
total year2=…

Офлайн

#4 Авг. 19, 2022 00:10:42

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9890
Репутация: +  854  -
Профиль   Отправить e-mail  

ЦИКЛЫ!ХЭЛП

  
>>> def f():
...     number_of_years = int(input('Enter number of years: '))
...     
...     months_in_year = 12
...     number_of_months = 0
...     total_mm = 0
...     
...     for y in range(number_of_years):
...         year_mm = 0
...         for m in range(months_in_year):
...             month_mm = int(input(
...                 'Enter number of millimeters for '
...                 'year {} and month {}: '.format(
...                     y + 1, m + 1)))
...             year_mm += month_mm
...             total_mm += month_mm
...             number_of_months += 1
...         year_average_mm = year_mm // months_in_year
...         print('For year {} the average number of millimeters is {}.'.format(
...             y + 1, year_average_mm))
...     
...     average_mm = total_mm // number_of_months
...     print('For {} years the average number of millimeters is {}.'.format(
...         number_of_years, average_mm))
... 
>>> f()
Enter number of years: 3
Enter number of millimeters for year 1 and month 1: 100
Enter number of millimeters for year 1 and month 2: 250
Enter number of millimeters for year 1 and month 3: 350
Enter number of millimeters for year 1 and month 4: 200
Enter number of millimeters for year 1 and month 5: 128
Enter number of millimeters for year 1 and month 6: 200
Enter number of millimeters for year 1 and month 7: 250
Enter number of millimeters for year 1 and month 8: 190
Enter number of millimeters for year 1 and month 9: 200
Enter number of millimeters for year 1 and month 10: 205
Enter number of millimeters for year 1 and month 11: 185
Enter number of millimeters for year 1 and month 12: 160
For year 1 the average number of millimeters is 201.
Enter number of millimeters for year 2 and month 1: 180
Enter number of millimeters for year 2 and month 2: 200
Enter number of millimeters for year 2 and month 3: 300
Enter number of millimeters for year 2 and month 4: 100
Enter number of millimeters for year 2 and month 5: 200
Enter number of millimeters for year 2 and month 6: 300
Enter number of millimeters for year 2 and month 7: 250
Enter number of millimeters for year 2 and month 8: 180
Enter number of millimeters for year 2 and month 9: 200
Enter number of millimeters for year 2 and month 10: 210
Enter number of millimeters for year 2 and month 11: 250
Enter number of millimeters for year 2 and month 12: 230
For year 2 the average number of millimeters is 216.
Enter number of millimeters for year 3 and month 1: 150
Enter number of millimeters for year 3 and month 2: 140
Enter number of millimeters for year 3 and month 3: 155
Enter number of millimeters for year 3 and month 4: 180
Enter number of millimeters for year 3 and month 5: 200
Enter number of millimeters for year 3 and month 6: 215
Enter number of millimeters for year 3 and month 7: 155
Enter number of millimeters for year 3 and month 8: 160
Enter number of millimeters for year 3 and month 9: 180
Enter number of millimeters for year 3 and month 10: 170
Enter number of millimeters for year 3 and month 11: 175
Enter number of millimeters for year 3 and month 12: 200
For year 3 the average number of millimeters is 173.
For 3 years the average number of millimeters is 197.
>>>



Отредактировано py.user.next (Авг. 19, 2022 00:12:08)

Офлайн

#5 Авг. 19, 2022 10:32:26

litvyakovirdeev
Зарегистрирован: 2022-08-18
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

ЦИКЛЫ!ХЭЛП

ОГРОМНЕЙШЕЕ СПАСИБО!!!!!ТЕПЕРЬ ПОНЯЛ В ЧЕМ ДЕЛО!!!!

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version