Ciências e Tecnologia » Tecnologia » Computação » A matemática na programação e desenvolvimento de software

A matemática na programação e desenvolvimento de software

Nos dias de hoje onde praticamente tudo a nossa volta é feito com dispositivos microprocessados, onde computadores e equipamentos baseados em software de alto nível estão presentes cada vez no nosso cotidiano a programação e o desenvolvimento de software se tornou algo essencial nas nossas vidas. Porém nada disso seria possível sem a boa e velha matemática, por isso nesse artigo destacaremos a importância da matemática na programação, no desenvolvimento de softwares e eventualmente na computação e processamento de dados em geral.

A importância da matemática na programação

A importância da matemática na programação e desenvolvimento de software começa desde a utilização do sistema binário na programação lógica e nos primeiros computadores e máquinas de cálculo, seguindo adiante podemos citar alguns exemplos como:

  1. A importância do uso de álgebra linear, matrizes, geometria analítica, e trigonometria na computação gráfica.
  2. Uso da matemática financeira e estatística no desenvolvimento de aplicações comerciais e sistemas de gestão.
  3. Sistemas de logística: teoria dos grafos, teoria das filas, simulação.
  4. O uso da álgebra relacional em  bancos de dados, algorítimos e estruturas de dados.

A lógica matemática na programação

A matemática na programação e desenvolvimento de software

Talvez o mais importante conceito herdado da matemática para a programação é lógica matemática, focando no objetivo a ser atingido, fragmentando o problema em problemas menores, e construindo a arvore de ações, decisões, repetições e condições necessárias até o que o objetivo seja atingido e que o resultado seja verificado e dado como satisfatório. Tudo isso é promovido através dos recursos básicos providos por cada linguagem conhecido como operadores como “e” e “ou”, “se” e “senão”, igual, diferente, maior, menor, falso, verdadeiro, dentre outros.

Alguns dos conceitos básicos da lógica matemática são aplicados na programação.

  1. Teoria da prova
  2. Teoria da computação
  3. Teoria dos modelos

A história dos algoritmos

Um algoritmo é um procedimento passo a passo para cálculos para uma determinada execução, em palavras simples uma receita de bolo nos cai bem como analogiaAlgoritmos são utilizados para o cálculo, e processamento de dados automatizado. Um algoritmo é um método eficaz, expressado em uma lista finita de instruções bem definidas para o cálculo de uma função.

A partir de um “estado inicial” e entrada inicial que pode ser vazia, ele descreve as instruções de um cálculo que, quando executado, procede-se por um número finito de estados sucessivos bem-definidos, eventualmente produzindo uma “saída” e terminando em um estado final. A transição de um estado para outro não é necessariamente determinística; Alguns algoritmos, conhecidos como algoritmos randômicos, incorporam entrada aleatória.

Algoritmos são a base da lógica de programação e estão presentes em todos os projetos de desenvolvimento de software, o próprio nome algoritmo remonta a palavra  ‘Algoritmi’, que é a forma latina do nome al-Khwarizmi, um matemático persa, astrônomo e geógrafo. O primeiro algoritmo escrito especificamente para ser executado por uma máquina – conhecida como  Máquina de Turing – foi escrito pela matemática Ada Lovelace, que é tida como a primeira programadora.

Os numero binários e a lógica booleana

Os sistema de numeração binário é um sistema que usa a aritmética de ponto flutuante na base 2 para expressar qualquer valor usando apenas dois números, 0 e 1, todos os computadores atuais trabalham com esse sistema. Eles usam dois sistemas estados baseados em níveis de tensão (0 e 5 V), isso permite o uso da lógica booleana para facilitar os cálculos, assim as operações lógicas e aritméticas são executas com apenas dois dígitos ou dois estados ou seja 1 ou 0, sim e não, true e false,  ligado e desligado. Nesse sistema é que se baseia a eletrônica digital e a computação.

Linguagens de programação de baixo nível como Assembly, utilizam comandos para enviar instruções em binário diretamente para o hardware e são utilizadas para a programação de microcontroladores presentes na maioria dos dispositivos processados que podemos encontrar hoje.

A imagem ilustra como se dá a conversão de um numero para binário - matemática na programação

A imagem ilustra como se dá a conversão de um numero para binário – matemática na programação

A álgebra linear na programação

Álgebra linear é um campo da matemática que tem origem no estudo profundo de sistemas de equações lineares, sejam elas algébricas ou diferenciais, ela se utiliza de alguns conceitos e estruturas fundamentais da matemática como vetores, espaços vetoriais, transformações lineares, sistemas de equações lineares e matrizes.

A álgebra linear é de extrema importância na programação, principalmente quando se trabalha elementos gráficos ou a solução de problemas que exigem a resolução de um sistema linear, a utilização de matrizes para a formação de elementos gráficos (toda imagem é composta como uma matriz), transformações lineares são usadas também para se trabalhar com 3D.

Em computação gráfica, o espaço espectral de cores é um espaço vetorial com 3 dimensões que por sua vez corresponde às três cores primárias. Diferentes sistemas de coordenadas que são conhecidos como sistemas de cores) são considerados neste espaço, variando conforme a aplicação ou o dispositivo de saída (monitor, impressora, projetor).

Muitas vezes se faz necessário mudar de um sistema de coordenadas para outro, isso é possível através de uma matriz de mudança de coordenadas. Por exemplo, a matriz de mudança de coordenadas do sistema RGB para o sistema XYZ é uma matriz 3×3 obtida quando se considera a cor branca como um ponto fixo da transformação.

Matrizes e vetores

O uso de matrizes e vetores pode ser destacado ainda na programação de linguagens de alto nível, onde se usa o recurso da criação de uma matriz (ou array), ou vetor (vector) para organizar dados.

Uso da estatística no desenvolvimento de software

Frequentemente um programador encontra a sua frente a tarefa de automatizar uma tarefa até então executa por uma ser humano, muitas vezes isso requer o uso de conceitos de estatística e da teoria de probabilidades, bem como da matemática financeira e diversos modelos matemáticos específicos. Todas as linguagens de programação provem recursos básicos para a execução de qualquer cálculo ou equação, através de operadores aritméticos, lógicos dentre outros.

Frequentemente um programador precisa efetuar cálculos simples no seu projeto para oferecer ao usuário a analise desejada como por exemplo:

  • Porcentagem;
  • Probabilidade
  • Médias
  • Desvio padrão
  • Correlação linear

Existem diversas abordagens e modelos específicos da matemática aplicada que em determinados projetos se fazem necessárias como por exemplo os processos estocástico.

Referências

  1. GERÔNIMO, João Roberto; FRANCO Valdeni Soliane. Fundamentos de matemática: uma introdução à lógica matemática, teoria dos conjuntos, relações e funções. 2º Edição 2008.
  2. CERUZZI, Paul E. A History of Modern Computing. Cambridge, Massachusetts: The MIT Press, 1998. 398 p. ISBN 0-262-03255-4
  3. CAMPBELL-KELLY, Martin. From Airline Reservations to Sonic the Hedgehog: A History of the Software Industry. Cambridge, Massachusetts: The MIT Press, 2003. 372 p.
  4. CALLIOLI, Carlos A.; Hygino H. Domingues; Roberto C. F. Costa. Álgebra Linear e Aplicações. 6 ed. São Paulo: Atual, 1990.
  5. DAVIS, MARTIN. Engines of Logic: Mathematicians and the Origin of the Computer . New York: W. W. Norton, 2000.
Compartilhe issoShare on FacebookTweet about this on TwitterPin on PinterestShare on StumbleUponShare on LinkedInShare on RedditEmail this to someoneShare on Google+

Escrito por George Cruz

Técnico em química, programador, graduando em engenharia mecânica, um amante do conhecimento, da boa música e da arte.

2 Comentários

  1. gracias me ayudaron de muchooo

  2. gracias me ayudaron de mucho

Seu comentário é bem vindo

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

*

Artigo sobre a importância da matemática na programação e desenvolvimento de software desde o binário, a lógica matemática, e a álgebra linear e estatística