CONCEITUANDO PROGRAMAÇÃO E ALGORITMO (INTRODUÇÃO À
PROGRAMAÇÃO)
1
Programa
Sequência
de instruções a serem executadas pelo computador que visa atingir um objetivo
(resolver um problema). Um programa normalmente é escrito numa linguagem de
programação (SINTAXE + SEMÂNTICA)
As
etapas para a construção de um programa são: a) Análise: compreensão do
problema e identificação da entrada, das operações de processamento e da saída;
b) Elaboração do Algoritmo: descrição formal do problema e de sua solução; e,
c) Codificação: tradução do algoritmo para a linguagem de programação.
2
Algoritmo
Sequência
de passos que deve ser seguida para a realização de uma tarefa. Exemplos: a) Operações
para realizar um saque no caixa eletrônico; b) Uma receita de bolo; e, c) Tarefas
realizadas para embarque num terminal aeroportuário.
Definição
formal de Algoritmo: “Um algoritmo é uma lista de instruções que, quando
executadas, transformam dados de entrada até a saída. As instruções são um
conjunto finito de etapas que podem ser executadas, numa ordem precisa, por um
mecanismo determinista. Quando estas etapas são efetivamente executadas, a
execução deve terminar após um tempo finito.” (Holloway, 2007)
Características
de um Algoritmo: a) Ter fim; b) Não dar margem a dupla interpretação; c) Capacidade
de receber dados do mundo exterior; d) Pode gerar informações de saída para o
mundo externo ao ambiente do algoritmo; e, e) Ser efetivo.
Método
para a Construção de Algoritmos: a) Ler atentamente e compreender o problema a
ser solucionado; b) Identificar os dados de entrada; c) Identificar os dados de
saída; d) Determinar o processamento, ou seja, definir como obter os dados de
saída a partir dos dados de entrada; e) Escrever o algoritmo; e, f) Testar o
algoritmo, simulando sua execução.
Exemplo:
1°) Problema: “Pegar duas notas de um aluno e apresentar sua média”. 2°) Aplicação
do Método: a) Entrada: As duas notas do aluno.; b) Saída: A média; c) Processamento:
média = (nota1 + nota2)/2; d) Representação do Algoritmo: escrever o algoritmo
em uma notação específica; e, e) Testar o algoritmo.
Formas
de Representação de um Algoritmo: a) Descrição Narrativa: consiste na escrita
do algoritmo utilizando a linguagem natural; b) Fluxograma: o algoritmo é
escrito através de um conjunto padronizado de símbolos; e, c) Pseudocódigo:
consiste em definir uma pseudolinguagem de programação para representar o
algoritmo.
3
Algoritmos em descrição narrativa
Vantagem:
Não é necessário aprender nenhum conceito novo, pois a linguagem natural já é
bem conhecida.
Desvantagens:
a) imprecisão; b) pouca confiabilidade; e, c) Extensão;
Exemplo
(Algoritmo CalculaMedia): a) Solicite a primeira nota; b) Anote a primeira nota;
c) Solicite a segunda nota; d) Anote a segunda nota; e) Some a primeira nota
com a segunda e divida o resultado por 2; f) Anote o resultado do cálculo; e, g)
Informe o resultado.
4
Fluxogramas
Vantagens:
a) Uma das ferramentas mais conhecidas; b) Figuras dizem mais que palavras; e,
c) Padrão Mundial.
Desvantagens:
a) Pouca atenção aos dados; b) Complica-se à medida que o algoritmo cresce.
Utilização
de símbolos gráficos para representar algoritmos. No fluxograma existem
símbolos padronizados para início, entrada de dados, processamento, saída de
dados, fim, etc.
Exemplo
(Representação do Algoritmo CalculaMedia): ):
a) Início; b) Nota1; c) Nota 2; d) Media = (Nota1 + Nota2)/2; e)
Media; e, f) Fim.
5
Pseudocódigo
Vantagens:
a) Usa a linguagem natural como base; b) Pode-se definir quais e como os dados
vão estar estruturados; e, c) Passagem quase imediata para uma linguagem de
programação.
Desvantagens:
a) Exige a definição de uma linguagem não real para o trabalho; e, b) Não
padronizado.
É a maneira de representar um algoritmo que mais se assemelha às linguagens de programação. Consiste na definição de uma pseudolinguagem de programação para representar algoritmos.
Estrutura
da nossa pseudolinguagem: algoritmo “<nome do Algoritmo>”; var <Bloco de Variáveis> inicio <Bloco de Comandos> fimalgoritmo.
*Créditos: Prof. Raimundo Osvaldo Vieira
(IFMA)