From 479791d6f13d7c1eeddfb64f8cc4738716968456 Mon Sep 17 00:00:00 2001 From: Vitor Buxbaum Date: Sat, 3 Apr 2021 11:59:03 -0300 Subject: [PATCH] =?UTF-8?q?2.3=20-=20Implementa=C3=A7=C3=A3o=20e=20asserts?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 2_paradigmas/3_fibonacci.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 2_paradigmas/3_fibonacci.py diff --git a/2_paradigmas/3_fibonacci.py b/2_paradigmas/3_fibonacci.py new file mode 100644 index 0000000..aad003c --- /dev/null +++ b/2_paradigmas/3_fibonacci.py @@ -0,0 +1,24 @@ +class Fibonacci: + @classmethod + def recursivo(cls, n): + if n < 2: + return n + else: + return cls.recursivo(n - 1) + cls.recursivo(n - 2) + + @classmethod + def iterativo(cls, n): + primeiro = 0 + segundo = 1 + for _ in range(n): + primeiro = segundo + primeiro + segundo = primeiro - segundo + return primeiro + + +if __name__ == "__main__": + teste_recursivo = Fibonacci.recursivo(7) + teste_iterativo = Fibonacci.iterativo(7) + + assert teste_recursivo == 13 + assert teste_iterativo == 13