Em Python: Ache a soma de todos números naturais múltiplos de 3 ou 5 menores que n.
Formato de entrada
Um número inteiro n.
Formato de saída
A soma de todos os números naturais múltiplos de 3 e 5 menores que n, com uma quebra de linha.
Soluções para a tarefa
Segue código:
#!/usr/bin/env python3
def soma(n):
def qtd_maior(n, k):
qtd = n // k
maior_multiplo = qtd * k
return qtd, maior_multiplo
qtd_3, maior_multiplo_3 = qtd_maior(n-1, 3)
qtd_5, maior_multiplo_5 = qtd_maior(n-1, 5)
qtd_15, maior_multiplo_15 = qtd_maior(n-1, 15)
soma_3 = (3+maior_multiplo_3)*qtd_3//2
soma_5 = (5+maior_multiplo_5)*qtd_5//2
soma_15 = (15+maior_multiplo_15)*qtd_15//2
return soma_3 + soma_5 - soma_15
n = int(input('Entre com um número: '))
print(soma(n))
'''
# uma forma pythoniana
n = int(input('Entre com um número: '))
tres = [x for x in range(3,n,3)]
cinco = [x for x in range(5,n,5)]
quinze = [x for x in range(15,n,15)]
print(sum(tres)+sum(cinco)-sum(quinze))
'''
Espero ter ajudado!
O seguinte programa realiza a iteração entre 0 e o número n. Caso o número da iteração seja múltiplo de 3 ou 5, a operação % observa se o resto é 0, o que indica um múltiplo, e adiciona o número ao resultado final.
O que é um programa?
Um programa é uma sequência de instruções que realizam uma determinada tarefa.
O seguinte programa realiza a iteração entre 0 e o número n. Caso o número da iteração seja múltiplo de 3 ou 5, a operação % (que retorna o resto da divisão) observa se o resto é 0, o que indica um múltiplo, e adiciona o número ao resultado final.
def encontrar_multiplos(n) -> int:
soma = 0
for numero in range(0, n):
if (numero%3 == 0) or (numero%5 == 0):
soma += numero
return soma
if __name__ == "__main__":
print(encontrar_multiplos(10))
Para aprender mais sobre programas, acesse:
brainly.com.br/tarefa/19885120
#SPJ2