Atividade1_MD2
Example heading with h2 size
Example heading with h3 size
Following is sample python code.
# Questão 1
def fat(n):
if (n == 1 or n == 0): return 1
return n*fat(n-1)
print(fat(5))
# Questão 2
def fib(n):
if (n == 0 or n == 1): return n
return fib(n-1)+fib(n-2)
print(fib(5))
# Questão 3
def nat_numbers(n, i=1):
if(i>n):return 0
print(i)
nat_numbers(n, i+1)
nat_numbers(100)
# Questão 4
def sum(n):
if(not n):return 0
return n+sum(n-1)
print(sum(100))
# Questão 5
def mdc(x,y):
if((max(x,y)%min(x,y))==0): return min(x,y)
if((max(x,y)%min(x,y))==1): return min(x,y)
return mdc(min(x,y), max(x,y)%min(x,y))
print(mdc(80,60))
# Questão 6
def mmc(x,y):
return x*y / mdc(x,y)
print(mmc(64,8))
# Questão 7
def adicao_modular(a, b, z):
return (a + b) % z
a, b, z = 2, 7, 10
print(f"{a} ⊕ {b} em Z{z} = {adicao_modular(a, b, z)}")
# Questão 8
def multiplicacao_modular(a, b, z):
return (a * b) % z
a, b, z = 2, 7, 10
print(f"{a} ⊗ {b} em Z{z} = {multiplicacao_modular(a, b, z)}")
from tabulate import tabulate
def tabela_adicao_modular(z):
tabela = []
for a in range(z):
linha = []
for b in range(z):
linha.append(adicao_modular(a, b, z))
tabela.append(linha)
header = ["⊕"] + list(range(z))
tabela_com_cabecalho = [[i] + linha for i, linha in enumerate(tabela)]
return header, tabela_com_cabecalho
header, tabela = tabela_adicao_modular(10)
print(tabulate(tabela, headers=header, tablefmt="grid"))
from tabulate import tabulate
def tabela_multiplicacao_modular(z):
tabela = []
for a in range(z):
linha = []
for b in range(z):
linha.append(multiplicacao_modular(a, b, z))
tabela.append(linha)
header = ["⊗"] + list(range(z))
tabela_com_cabecalho = [[i] + linha for i, linha in enumerate(tabela)]
return header, tabela_com_cabecalho
header, tabela = tabela_multiplicacao_modular(10)
print(tabulate(tabela, headers=header, tablefmt="grid"))