Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #! /usr/bin/env python3
- # Каждый следующий элемент ряда Фибоначчи получается при сложении двух
- # предыдущих. Начиная с 1 и 2, первые 10 элементов будут: 1, 2, 3, 5,
- # 8, 13, 21, 34, 55, 89, ... Найдите сумму всех четных элементов ряда
- # Фибоначчи, которые не превышают четыре миллиона.
- # Решение №1
- fib_list = [0,1]
- while fib_list[-1] < 4000000:
- fib_list.append(fib_list[-1] + fib_list[-2])
- print(sum(filter((lambda x: x % 2 == 0), fib_list[0:-1])))
- # 4613732
- # Решение №2
- fib_list = [0,1]
- while fib_list[-1] < 4000000:
- fib_list.append(fib_list[-1] + fib_list[-2])
- even_fib_list = [x for x in fib_list[0:-1] if x % 2 == 0]
- s = 0
- for i in even_fib_list:
- s += i
- print(s)
- # 4613732
- # Решение №3
- fib_list = [0,1]
- while fib_list[-1] < 4000000:
- fib_list.append(fib_list[-1] + fib_list[-2])
- s = 0
- for i in fib_list:
- if i % 2 == 0:
- s += i
- print(s)
- # 4613732
Add Comment
Please, Sign In to add comment