sábado, 9 de junho de 2012

Introdução Sobre Algoritmos


 Algoritmo é uma sequência finita de instruções organizadas de forma lógica e estruturada (sem desvios), expressas em linguagem natural (português estruturado), que tem como finalidade efectuar uma tarefa.


Outras defenições: 
  • É uma sequência de procedimentos (passos) finitos que, se forem executados em determinado período de tempo, chegará ao seu objectivo.
  • O algoritmo se define por uma sequência lógica de passos que o computador executará fielmente para que se obtenha um resultado satisfatório. 
 
Há que ter em consideração que existem três fases distintas na elaboração de algoritmos e programas
  • A análise do problema (especificação do problema, análise de requisitos, pressupostos , etc)
  • A concepção do algoritmo
  • A tradução deste algoritmo na linguagem de programação.

Características fundamentais de um algoritmo

  • Finitude: um algoritmo deve sempre terminar após um número finito de passos;
  • Definição: cada passo de um algoritmo deve ser precisamente definido. As acções dever ser definidas rigorosamente e sem ambiguidade;
  • Entradas: um algoritmo deve ter zero ou mais entradas, isto é, valores que lhe são fornecidos antes do algoritmo iniciar;
  • Saídas: um algoritmo deve ter uma ou mais saídas, valores que têm alguma relação com as entradas;
  • Eficiência: um algoritmo deve ser eficiente. Isto significa que todas as operações deve ser suficientemente básicas de modo que possam ser em princípio executadas com precisão em tempo finito por um ser humano utilizando um papel e lápis;

Formas de se Representar um algoritmo

Descrição Narrativa:
  • Utiliza uma linguagem de escrita natural para descrever algoritmos.
Fluxograma:
  • Utiliza uma linguagem de representação gráfica para descrever algoritmos.
Pseudo-Código(Linguagem Algoritmica): 
  • Utiliza uma linguagem mais formal para descrever algoritmos.

Exemplo:Algoritmo para converter uma temperatura em Fahrenheit para Celsius

Formas de representar O algoritmo


1.Descrição narrativa do algoritmo Fahrenheit-Celsius:
 
solicite a temperatura em Fahrenheit;
transforme a temperatura em Fahrenheit para Celsius;
informe a temperatura em Celsius.
 [Aqui termina o algoritmo para converter a temperatura de Fahrenheit para Celcius]
 
2.Fluxograma do algoritmo Fahrenheit-Celsius:
 
 
 
 
3.Pseudo-código do algoritmo Fahrenheit-Celsius:
algoritmo "Fahrenheit-Celsius“
Var
   Fahrenheit, Celsius: real
Inicio
   leia(Fahrenheit)
   Celsius <- 5/9 * (Fahrenheit-32)
   escreva(Celsius)
fimalgoritmo
  
Vantagens e Desvantagens das formas de Representar os algoritmos