Почему у вас цикл до A + 1? Надо разобраться в условии задачи. До А включительно, или нет? Если не включительно, исправьте for i in range(2, A):
По-моему всё у вас правильно. Вот чуть более короткий вариант: sum(x for x in range(A+1) if ~x%5*x%3)
5 ответов 5
Выводится все верно, вероятнее всего вы не правильно проверяете, например считая до 15 вы забываете что 15 есть как в первом так и во втором наборе, и складываете вначале все кратные 3, а затем все кратные 5, хотя ваш код (правильно) считает число 15 лишь 1 раз.
Тест 1.
Wolfram Alpha запрос: multiples of 3 or multiples of 5 between 0 and 20 Результат: Сумма: 98 Результат работы программы: 98
Тест 2.
Wolfram Alpha запрос: multiples of 3 or multiples of 5 between 0 and 35 Результат: Сумма: 293 Результат работы программы: 293
Тест 3.
Wolfram Alpha запрос: multiples of 3 or multiples of 5 between 0 and 50 Результат: Сумма: 593 Результат работы программы: 593
Не является ответом на вопрос. Чтобы оставить свои замечания или попросить у автора внести уточнения, оставьте комментарий к соответствующему сообщению. — из очереди проверок
Уважаемый, результат выполнения программы соответствует результату подстчета. Это именно ответ на вопрос. Я не прошу внести изменения или высказываю замечания, я говорю по факту. Человек возможно допустил ошибку при проверке. Программа написана корректно.
Дорогой wan140! Вам нужно чтобы при обнаружении получения ноля к sum прибавлялось 3/5 или чтобы прибавлялось число, в ходе деления которого получился ноль? Если вам нужен второй вариант, то ваш код работает правильно. Если же вам нужен первый вариант, то вот вам готовый код:
def solution(A): total = 0; for i in range(2, A + 1): if i % 3 == 0: total += 3 elif i % 5 == 0: total += 5 print(total)
P.S. «переменная» sum у меня подсвечивалась не как переменная, поменял название на total. И ещё, пожалуйста, пользуйтесь табуляциями, а не пробелами.
1. Мне нужно, чтобы при обнаружении числа кратного 3 или 5, результат увеличивался на это число. 2. В чем причина провала теста? 3. Мне удобнее пользоваться пробелами.
1. Код у вас уже есть. 2. Вашу проблему решил давно, точно не помню в чём проблема, не пользуюсь конструкциями со скобками, if-elif-else лучше, как по мне.А вообще, откройте ваш код и мой, попробуйте понять почему они работают по-разному. 3. Ваше право
a = input("Верхний предел числового списка= ") chisla = list(range(0, int(a))) print(chisla) result = [] for i in chisla: if ((i % 3) == 0 or (i % 5 == 0)): result.append(i) print(result) print("Сумма чисел меньше ",a ," ", "кратных 3 или 5 "," mt24">
текстовую информацию лучше прилагать в виде текста: а) читать легче; б) можно копировать; в) поиск работает. исправить текст вопроса можно, нажав править ниже текста вопроса
– aleksandr barakin
15 окт 2019 в 20:05
Понял. Спасибо) Я впервые тут.
– Alexander Svirin
16 окт 2019 в 9:46
Добавить комментарий|
0
def solution(number): sum = 0 for i in range(2, number): if((i % 3 == 0) or (i % 5 == 0)): sum += i return sum
Вам просто не надо было плюсовать 🙂
from functools import reduce def solution(number): if number > 0: multiples = [i for i in range(number) if (i % 3 == 0) or (i % 5 == 0)] return reduce((lambda x, y: x + y), multiples) else: return 0
если это на codewars то я вот таким образом выполнил, но лучшее решение вот это:
def solution(number): return sum([x for x in range(number) if x % 3 == 0 or x % 5 == 0])
Дана последовательность натуральных чисел, в начале которой перечислены числа кратные 3. Найти сумму и количество таких чисел.
В промежутке от 15 до 115 найти сумму квадратов чисел, кратных трем, и сумму кубов чисел, кратных пяти В промежутке от 15 до 115 найти сумму квадратов чисел, кратных трем, и сумму кубов чисел, кратных.
Найти количество чисел в интервале [a, b], и сумму чисел, стоящих на местах, кратных 3 Найти количество чисел, принадлежащих промежутку , и сумму чисел, стоящих на местах, кратных 3
В массиве найти сумму чисел меньше -5 и их количество, а также найти номера элементов кратных 5 Доброго времени суток друзья! Помогите решить задачу. Дан одномерный массив. Найти сумму чисел.
Найти количество чисел, кратных 3 и не кратных 5 Пользователь вводит два целых числа M и N в одной строке. Найти количество чисел, кратных 3 и не.
data =[1,3,7,9,8,5,6,12,14,99,6,14] n_data =[i for i in data if i % 3==0]print('sum:',sum(n_data),'col:',len(n_data))
Определить сумму элементов массива N, кратных трем
В промежутке от 15 до 115 найти сумму квадратов чисел, кратных трем, и сумму кубов чисел, кратных пяти В промежутке от 15 до 115 найти сумму квадратов чисел, кратных трем, и сумму кубов чисел, кратных.
Определить сумму и среднее арифметическое элементов последовательности, кратных 5, но не кратных 7 Вводится последовательность ненулевых чисел, 0 – конец последовательности. Определить сумму и.
Определить сумму элементов массива, кратных трем Помогите девушке решить индивидуальные задачи по С++ . help me please. 1.Дан массив.
Определить сумму элементов массива N, кратных трем Добрый вечер! Помогите пожалуйста составить код, никак не могу разобраться с условием и как это все.
Определить сумму элементов массива, кратных трем Помогите пожалуйста это реализовать Одномерный массив: N(50). Определить сумму элементов.
Сообщение было отмечено rina_shym как решение
Решение
L =list(range(10))print(sum(i for i in L if i % 3==0))
Определить сумму элементов массива, кратных трем Напишите пожалуйста код СИ с данными значениями и условиями Массив - N Задание - Определить.
Определить сумму элементов массива N, кратных трем Определить сумму элементов массива N, кратных трем (если не трудно можно блок схему)
Определить сумму элементов массива, кратных трем Помогите девушке решить индивидуальные задачи по С++ . help me please. 1.Дан массив.
Определить количество и сумму элементов массива, кратных трем (делятся на три без остатка) 4) численный массив L(15), определить количество и сумму чисел, кратных трем (делятся на три без.
Определить сумму элементов кратных трем и их количество Упражнение 13: В одномерном массиве целых чисел A(12) определить сумму элементов кратных трем и их.
Необходимо найти самый большой непрерывный фрагмент в массиве a1,a2. aN, сумма элементов которого делится на 3. Входные данные В первой строке входного файла содержится число N≤100000. Во второй строке входного файла следуют N чисел, по модулю не превосходящих 109 — элементы массива. Выходные данные Выведите два числа — индексы начала и конца фрагмента. Если таких фрагментов несколько, то выведите фрагмент с минимальным индексом начала. Если ответа не существует, то выведите единственное число −1. Примеры Ввод Вывод 4 1 2 3 4 1 3 5 1 2 3 4 5 1 5
n = int(input()) k = [] a = list(map(int, input().split())) p = [0]*(n+1) for i in range(1, n+1): p[i] = (p[i-1] + a[i-1]) % 3 for i in range(len(p)): if p[i] == 0: k.append(i) if len(k) < 2: print(-1) else: print(k[0] + 1, k[-1])
1 ответ 1
Приведённый код учитывает только фрагменты, кумулятивная сумма ( p[] ) которых равна 0 по модулю 3. Однако подходят и фрагменты, и начало, и конец которых имеют одинаковые p[] со значением 1 или 2.
Поэтому стоит завести список начал и список концов длиной 3
s = [-1] * 3 e = [-1] * 3 p = 0 #список ведь хранить ни к чему maxlen = 0 mmax = -1 m = 0 for i in range(n): if s[m] < 0: s[m] = i p += a[i] m = p % 3 if s[m] >=0: e[m] = i if i - s[m] + 1 > maxlen: maxlen = i - s[m] + 1 mmax = m if mmax >=0: print(s[mmax] + 1, e[mmax] + 1) else: print(mmax)
Найти количество и среднее арифметическое элементов массива А(20), кратных 2 и не кратных 8 Найти сумму элементов квадратной матрицы, лежащих на главной диагонали и произведение элементов.
Найти произведение элементов массива, кратных 7 Дано натуральное число N и последовательность a1, a2, …, aN целых чисел, заданных случайным образом.
Определить сумму элементов массива N, кратных трем Определить сумму элементов массива L , кратных трем. Написал программу на паскале теперь нужно на.
странно откуда Result Summa= 90? если числа кратные 3м это 27 12 9 0 6 27 >>> 27+12+9+0+6+27 81
Massiv_V=[int(x)for x ininput().split()] Result_Summa=0for x in Massiv_V: if x%3==0: Result_Summa+=x print(Result_Summa)
importmathimportrandom n=30 a=[] s=0for i inrange(n-1): a.append(x)
fromrandomimport randint arr =[randint(1,30)for x inrange(29)]print('Sum:',sum(x for x in arr ifnot x % 3))
Найти количество элементов двумерного массива, кратных «с». Для вычисления используем функцию Не совсем понятно , как делать
Вычислить сумму элементов массива кратных 8 с нечетными индексами и вывести эти элементы на экран Вычислить сумму элементов массива кратных 8 с нечетными индексами и вывести эти элементы на.
Знакопеременная сумма элементов массива Ввод с клавиатуры 27 целых положительных чисел, заполняя список. Найти закономерную знакопеременную.
Сумма положительных элементов массива Задан массив X из N элементов. Какое условие надо поставить вместо многоточия, чтобы найти сумму.
Массив: Сумма отрицательных элементов массива есть значит задача. Разработать программу, соблюдая следующие требования: • число n (количество.
Сумма элементов парных строк массива Используя генератор случайных чисел, заполнить список , . ], где n – количество букв в.