A computação está presente em quase tudo que interagimos atualmente, se tornando um aliado essencial no desenvolvimento de várias áreas da sociedade. Mas talvez já tenhamos nos perguntado, como tudo isso é possível? Como uma ferramenta que surgiu no século passado pode ser fundamental e interferir em tantas atividades humanas? Bom… os computadores podem até ser recentes, mas a “mágica” que acontece por traz de seus componentes eletrônicos é muito mais antiga do que a própria eletrônica. E essa mágica pode ser chamada de algoritmo.

A história dos algoritmos

Os algoritmos têm uma longa história, e a utilização da palavra “algoritmo” pode ser vista desde o século IX. Foi nesta época que o cientista, astrônomo e matemático persa Abdullah Muhammad Bin Musa Al-Khwarizmi usou pela primeira vez o termo “algoritmo”. Além dessa criação, muitos o chamam de “o Pai da Álgebra”.

Al-Khwarizmi

A palavra algoritmo, originalmente se referia apenas às regras da realização de aritmética utilizando algarismos indo arábicos. O uso da palavra permitiu sua evolução, incluindo assim, todos os procedimentos definidos para resolver problemas ou realizar tarefas. Na história dos estudos matemáticos, o trabalho dos antigos geômetras gregos, do matemático persa Al-Khwarizmi, dos matemáticos chineses e ocidentais culminaram na noção de Leibniz do calculus ratiocinator, uma álgebra da lógica.

Existem muitos trabalhos relacionados a algoritmos ao longo da história. Um dos mais conhecidos algoritmos é conhecido como “Algoritmo Euclidiano”. O matemático Euclides criou um algoritmo que serve para calcular o máximo divisor comum (mdc).

O que é um algoritmo?

De maneira simples, um algoritmo pode ser definido como uma série de instruções para resolver um problema. O mais importante é compreender que um algoritmo é uma sequência lógica de passos, que possui um começo, meio e fim. Cada passo desse algoritmo deve ser expresso de forma clara, utilizando na maioria das vezes regras ou padrões específicos para que não haja dúvidas na sua interpretação. Essa sequência de passos sempre tem um objetivo especifico, que geralmente é a resolução de um problema. Para que a solução encontrada pelo algoritmo seja satisfatória, o mesmo deve receber dados de entrada, muitas vezes chamados de variáveis. Por fim, o processamento dos dados de entrada do algoritmo resulta nos dados de saída que, logicamente, é a solução para o problema em questão.

A partir dos algoritmos é que foi possível o desenvolvimento dos softwares (programas de computador), que são responsáveis por fornecer instruções ao hardware do computador e fazer com que o mesmo consiga realizar todas as suas tarefas por meio da lógica formal.

O conceito de lógica formal compreende em fazer com que o computador produza uma série sequencial de entrada, processamento e saída. A lógica formal também pode ser conhecida como lógica simbólica, que foca a estrutura do raciocínio, trabalhando assim com a relação entre conceitos, e fornece um meio de compor provas de declarações. Dessa maneira, o computador por meio das instruções fornecidas pelo algoritmo consegue interpretar essas informações na forma binária (0 ou 1), fazendo com que os comandos sejam processados.

O algoritmo depende do hardware?

A resposta é não. Como um algoritmo é uma um série de instruções que visa resolver um problema ele não possui restrições ou limitadores para sua aplicação. Uma receita de bolo, por exemplo, é um algoritmo. Um manual de instalação de um chuveiro também é um algoritmo.

O hardware, por sua vez, depende de um software, e um software depende de um hardware. Essa relação existe pelo fato do componente eletrônico ser desenvolvido para ser controlado, e o software para controlar. Diferente do algoritmo, onde sua aplicação pode ser simplesmente teórica, sem carecer de intermediadores para sua implementação.

A sociedade agradece

Por fim, é importante relembrar a importância dos algoritmos em nossa sociedade. Com a evolução dos computadores e a popularidade dos smartphones, os softwares estão sendo mais utilizados do que nunca. Desde aplicativos como Candy Crush Saga até sistemas de segurança que utilizam inteligência artificial. O mais interessante disso tudo é perceber o potencial da lógica matemática para resolver problemas, e como vários campos de estudo estão relacionados no desenvolvimento da computação. Talvez hoje não exista uma ciência que estude todas as coisas, mas a computação pode ser a que mais se aproxima.