Você está na página 1de 1

Anotações de Programação

1. Conceito de programação
Um programa de computador é uma sequência de comandos e instruções para a
solução efetiva de algum problema. Essas soluções podem envolver cálculos,
processamento de dados ou as duas coisas.
Cada programa de computador é baseado num procedimento subjacente chamado
algoritmo. Um algoritmo pode ser implementado de diferentes formas, o que resulta
em diferentes programas usando o mesmo procedimento inicial. Assim, algoritmos
podem ser ditos como listas de procedimentos, enquanto os programas são listas que
trabalham na implementação desses procedimentos como códigos.
Um programa de computador é geralmente escrito por humanos e executado por
computadores, que trabalham na resolução de dados problemas. Essas resoluções
normalmente utilizam vários programas e algoritmos disponíveis. Alguns podem ser
superiores aos outros, quando consideradas a eficiência e/ou precisão de resultados.
Eficiência, na maioria das vezes, se refere a velocidade de programas e algoritmos.
Quanto menor tempo de duração (tempo de processamento), maior é a eficiência dos
programas e algoritmos usados. Nota-se que essa definição (maior velocidade) é uma
definição relativa, que envolve comparação de múltiplos programas e algoritmos. Em
alguns casos, a memória necessária para a solução de um problema pode ser incluída
como uma definição de eficiência. Nesses casos, os programas e algoritmos que
resolvem um problema mais rápido e consomem menos memória são mais eficientes.
Para ambas, velocidade e uso de memória, os programas e algoritmos naturalmente
dependem de seus inputs (entrada de informação).
Quando um programa/algoritmo é usado, o objetivo normalmente é conseguir um
conjunto de resultados nomeados outputs. Dependendo do problema, os outputs
podem ser letras, palavras ou números. A precisão é muitas vezes problemática
quando se trata de outputs numéricos. Desde que programas são instalados nos
computadores, resultados numéricos podem não ser exatos, ou seja, eles envolvem
erros. Isso ocorre não porque os programas estão errados, mas porque os
computadores usam Vírgula Flutuante (Floating point, em inglês) para representar
números, levando a erros de arredondamento, que, emborra individualmente sejam
irrelevantes, se acumulam e ficam visíveis nos outputs. Um programa/algoritmo que
produz menos erros é dito como mais preciso que os outros, que produzem mais erros.
Naturalmente, tal como a eficiência, a precisão é relativa, mas é comum chamar um
programa/algoritmo de estável quando ele produz resultados consistentemente
precisos em diferentes situações, ou seja, para diferentes inputs.
Ao se comparar programas/algoritmos, é geralmente visto compensações entre
eficiência e precisão, o que leva a ter que ser feita uma pesquisa detalhada para saber
quais programas e algoritmos são mais adequados para o requerido problema.

Você também pode gostar