Algoritmo
Origem: Wikipédia, a enciclopédia livre.
Um algoritmo é uma sequência não ambígua de instruções que é executada até que determinada condição se verifique. Mais especificamente, em matemática, constitui o conjunto de processos (e símbolos que os representam) para efectuar um cálculo. Algoritmos podem ser implementados por programas de computadores. A área que estuda algoritmos chama-se Ciência da Computação.
A palavra algoritmo tem origem no sobrenome, Al-Khwarizmi, do matemático persa do século IX, Mohamed ben Musa, cujas obras foram traduzidas no ocidente cristão no século XII, tendo uma delas recebido o nome "Algorithmi de numero indorum", sobre os algoritmos usando o sistema de numeração decimal (indiano). Outros autores, contudo, defendem a origem da palavra em Al-goreten (raiz - conceito que se pode aplicar aos cálculos).
O conceito de algoritmo é freqüentemente ilustrado pelo exemplo de uma receita, embora muitos algoritmos sejam mais complexos. Eles podem repetir passos (fazer iterações) ou necessitar de decisões (tais como comparações ou lógica) até que a tarefa seja completada. Um algoritmo corretamente executado não irá resolver um problema se o algoritmo estiver incorreto ou não for apropriado ao problema.
Um algoritmo não representa, necessariamente, um programa de computador, e sim os passos necessários para realizar uma tarefa. Sua implementação pode ser feita por um computador, por outro tipo de autômato ou mesmo por um ser humano.
Diferentes algoritmos podem realizar a mesma tarefa usando um conjunto diferenciado de instruções em mais ou menos tempo, espaço ou esforço do que outros. Por exemplo, um algoritmo para se vestir pode especificar que você vista primeiro as meias e os sapatos antes de vestir a calça enquanto outro algoritmo especifica que você deve primeiro vestir a calça e depois as meias e os sapatos. Fica claro que o primeiro algoritmo é mais difícil de executar que o segundo.
Índice |
[editar] Algoritmos e linguagens de programação de computadores
Geralmente, os algoritmos são informalmente descritos em uma linguagem próxima da língua natural, mais facilmente compreendida por um ser humano do que por um computador. Um algoritmo pode, na maior parte dos casos, ser implementado em qualquer linguagem de programação. Na programação, para tudo que fazemos há um algoritmo, uma estrutura, uma implementação. É importante ressaltar-se que o algoritmo representa na forma executável do programa, sistema, etc. uma estrutura de entrada, processamento e saída.
[editar] Formalizando algoritmos
Um programa de computador é essencialmente um algoritmo que diz ao computador os passos específicos e em que ordem eles devem ser executados, como por exemplo, os passos a serem tomados para calcular as notas que serão impressas nos boletins dos alunos de uma escola.
Para qualquer processo computacional, o algoritmo precisa estar rigorosamente definido, especificando a maneira que ele se comportará em todas as circunstâncias.
A corretude do algoritmo pode ser provada matematicamente, bem como a quantidade assintótica de tempo e espaço (complexidade) necessários para a sua execução. Estes aspectos dos algoritmos são alvo da análise de algoritmos. Entre outros.
[editar] Implementação
Há hoje uma grande variedade de linguagens de programação, cada uma com características específicas que podem facilitar a implementação de determinados algoritmos ou atender a propósitos mais gerais.
Algoritmos não são implementados apenas como programas para computadores, também podem ser implementados em circuitos elétricos ou até em nosso cérebro quando executamos operações aritméticas.
A análise de algoritmos é um ramo da ciência da computação que estuda as técnicas de projeto de algoritmos e os algoritmos de forma abstrata, sem estarem implementados em uma linguagem de programação em particular ou implementadas de algum outro modo. Um meio de exibir um algoritmo é mostrar seu pseudocódigo em Português estruturado.
[editar] Algoritmo em Português Estruturado
Exemplo de um algoritmo que irá retornar a soma de dois valores (também conhecidos como parâmetros ou argumentos) que são introduzidos na chamada da função:
função SomaDeDoisValores (A numérico, B numérico) inicio declare SOMA numérico SOMA <-- A + B retorne (SOMA) fim
[editar] Ver também
[editar] Ligações externas
[editar] Referências
- Algoritmos e Programação - Teoria e Prática: para universitários e profissionais de informática: Novatec Editora. ISBN 85-7522-073-X