Porque acredito que Programação e Matemática se complementam
Atenção: esse texto baseia-se única e exclusivamente na minha opinião e visão de mundo. Sou professor mestre em Educação Matemática e programo por hobbie e paixão.
Quem sou eu pra acreditar
Com mais de dez anos atuando como professor de Matemática me sinto seguro em afirmar que a construção do conhecimento lógico matemático é bastante mal interpretada pela maioria das pessoas. É possível perceber isso quando ouvimos comentários como:
— Ah! Então você é bom de Matemática? Faz essa conta aqui então...
E o problema fica evidente:
as pessoas acreditam que Matemática é sobre contas e agilidade, quando na verdade é sobre entender a lógica por trás dessas contas e de outros tópicos que sequer envolvem contas ou números.
Vou me ater a parte das contas, no entanto, pra que todos acompanhem como isso pode se complementar com a programação.
Quando estamos criando (não copiando) um código voltado para resolver um (ou mais) problema(s) de Matemática é fundamental entendermos como esse problema funciona. E é exatamente nesse momento que um conhecimento serve de ponte para o outro.
Para ficar didático, vamos a um exemplo:
A Sequência de Fibonacci
É famosa e está na natureza, em obras, no corpo humano e em diversos memes zombando sobre a possibilidade de atribuirmos propriedades cabalísticas para quaisquer números caso tenhamos paciência o suficiente.
Acima é possível ver a famosa espiral de Fibonacci (em um dos memes zoeiros). Tal espiral é uma possibilidade de construção gráfica a partir de uma sequência de números que seguem a seguinte lógica: some o número atual com o anterior para obter o próximo, começando com dois números 1.
Dessa forma, obtemos: 1, 1, 2, 3, 5, 8, 13, 21, 34, ...
Conseguir os primeiros números a partir de uma recursão não é um grande problema. Mas se quisermos o centésimo valor, com certeza é complicado, pois não há uma fórmula que resuma essa recursividade, ou seja, você vai precisar montar a lista toda! E é aí que a programação entra como uma grande parceira.
Construindo a sequência de Fibonacci com Python
Olha como é tranquilo:
# Atribuímos os três valores iniciais
[n1,n2,seqFibonacci] = [1,1,[1,1]]
# Perguntamos pro usuário, rezando pra ele inserir um número natural maior que dois.
lim = int(input("Determine quantos valores deseja obter da Sequência de Fibonacci: "))
# Para todos os valores até o limite determinado...
for k in range(0,lim):
# ...some a primeira parcela com a segunda parcela...
soma = n1+n2
# ...adicione a soma na nossa lista...
seqFibonacci.append(soma)
# ...a primeira parcela agora é o valor do que era a segunda parcela...
n1=n2
# ...e o valor da segunda parcela agora é o valor da soma efetuada
n2=soma
# No final mostre o resultado
print(seqFibonacci)
E pronto! Fica óbvio que o centésimo valor é:
seqFibonacci[99]
354224848179261915075
Sobre as obviedades
É claro que estou exagerando que tudo isso é óbvio. As coisas só são óbvias para quem já sabe do assunto, mas meu ponto é o seguinte: se você sabe programação isso pode complementar na sua Matemática e vice-versa. Inclusive, acredito que quem aprende ambas em conjunto tem uma grande chance de assimilar melhor os dois aprendizados.
Minha ideia original com o canal Cafematica era justamente essa. No caminho a gente vai ajustando conforme o público, mas se te interessar estou buscando trazer mais assuntos do tipo por lá. Espero ter contribuído com esses pensamentos. Abraço!