Python

Помогите решить задачку в Python (!)

Напишите программу, которая считывает с клавиатуры два числа a и b, считает и выводит на консоль среднее арифметическое всех чисел из отрезка [a;b], которые делятся на 3.

В приведенном ниже примере среднее арифметическое считается для чисел на отрезке [−5;12]. Всего чисел, делящихся на 3, на этом отрезке 6: −3,0,3,6,9,12. Их среднее арифметическое равно 4.54.
На вход программе подаются интервалы, внутри которых всегда есть хотя бы одно число, которое делится на 3.

Пример:
Sample Input:
-5
12
Sample Output:
4.5

Я пыталась решить, но получался БРЕД полнейший, вот, полюбуйтесь :С

a=int(input(''))
b=int(input(''))
s=0
if a%2==0:
a+=1
for i in range(a,b+1,+2):
s+=i
print(s)
a=int(input(''))
b=int(input(''))
numbers = [x for x in range(a, b+1) if x%3 == 0]
print(sum(numbers)/float((len(numbers))))
ГА
Гуф Андрей
4 777
Лучший ответ
Сергей Инцапов зачем float((len(numbers))) ? список ведь всегда целое число
Миша Косьянов Спасибо за ответ!!
Валера Питомцев как бы да работает но можно проще написать вот некоторые вещи мы еше не прошли !
a = int(input())
b = int(input())
shet = 0
sum_elem = 0
for i in range (a, b+1):
..if i % 3 == 0:
....sum_elem += i
....shet += 1
print(sum_elem / shet )

или через список
Миша Косьянов Спасибо большое!
для начала между знаками сложения и т. п. должны быть пробелы!!!
Vitaly Kiryukhin
Vitaly Kiryukhin
427
Павел Лялин Здесь последовательность записана, это не сложение)
Потому что ты бред написала
во первых
if a%3==0:
во вторых в теле условия будет следующее
s=(a+b)/2
никаких for-ов тут ненужно
OK
Otto Kessler
330
Миша Косьянов Вообще, эту задачу надо написать именно с for и range. Я смотрю видео-уроки всего 3 дня, и пока Питону не научилась, но я вас уверяю, тут необходимо то, что я сказала, это требовалось в предыдущем задании - "а в следующей нашей задаче следует использовать for и range ". И всё же, спасибо за ответ.
Ильгиз Ахунов В условии написано же из отрезка! НЕ ДВУХ ЧИСЕЛ! А ИЗ ВСЕГО ОТРЕЗКА МЕЖДУ НИМИ!!!! Если это например а=3 b=9 значит отрезок=3,4,5,6,7,8,9!
А просто среднюю арифм. вывести любой 5класс может!
a = int(input("Введите число: "))
b = int(input("Введите число: "))
summ = 0
count = 0
for list in range (a, b + 1) :
if list % 3 == 0 :
summ += list
count += 1
if count == 0 :
print("Расчет невозможен нет подходящих чисел")
else:
print(summ / count)
Сергей Клюкин Перед тем как публиковать, вы вообще проверяете работу кода ?
a = int(input())
b = int(input())
s = 0
c = 0
for j in range (a,b+1):
if j%3 == 0:
s = s+j #42
c = c+1
j+=1
print(s/c)
Alvydas Grabys
Alvydas Grabys
237
begin = int(input('Введите первое число: '))
end = int(input('Введите второе число: '))
summ = 0
count = 0
for number in range(begin, end + 1):
if number % 3 == 0:
summ += number
count += 1
number += 1
print(summ / count)
AK
Abror Karimov
218
a=int(input(''))
b=int(input(''))
s = 0
for n_3 in range(a,b+1)
_if n_3%3==0:
__s+=n_3
__arithmetic_mean=s/(b//3)
print(arithmetic_mean)