Escolar Documentos
Profissional Documentos
Cultura Documentos
ALGORITMOS e
PROGRAMAÇÃO
(teoria e laboratório)
Prof. Ianna Sodré
ianna.sodre@academico.ifpb.edu.br
ALGORITMOS - Definição
São vários os conceitos para algoritmo.
“Um conjunto finito de regras que provê uma seqüência de operações para
resolver um tipo de problema específico” [KNUTH - Professor da
Universidade de Stanford, autor da coleção “The art of computer
programming”]
Dados
Dados Programa Informação
…
Primeiro problema
Fazer a divisão de um número por outro. Se o resultado
for positivo, imprimir o número encontrado pela
divisão, caso seja negativo, imprimir zero. Caso o
divisor seja zero, imprimir o valor -1.
O que preciso ter para resolver o problema?
(dados de entrada)
Qual a solução?
Formas de representação
●
Um único algoritmo pode ser representado de
várias maneiras.
●
Por exemplo, algoritmo para converter valores
de temperatura em Celsius para Fahrenheit.
– F= (9/5)C + 32
– Multiplique o valor da temperatura em Celsius pode
9/5 e depois some 32.
Formas de representação
●
Descrição narrativa
– São expressos diretamente em linguagem natural.
●
Fluxograma convencional
– São expressos diretamente em linguagem
representação gráfica (formas geométricas).
●
Pseudocódigo (linguagem algorítmica ou portugol)
– São expressos diretamente em uma linguagem
artificial.
Formas de representação
Descrição Narrativa Fluxograma Convencional Pseudocódigo
Vantagens x desvantagens?
Linguagem Algorítmica
●
Exemplo
// Calcular a idade através das variáveis: ano de nascimento e ano corrente.
algoritmo "idade"
var
ano_nascimento, ano_corrente, idade : inteiro
inicio
escreva ("Entre com o ano de nascimento e o corrente:")
leia (ano_nascimento, ano_corrente)
idade := ano_corrente - ano_nascimento
escreva (“Sua idade atual é: ", idade)
fimalgoritmo
Decisão ou seleção:
Também conhecida por Seleção, pode provocar ou não a realização
de uma ação;
Repetição ou iteração:
os comandos e as estruturas de controle abrangidos devem ser
executados repetidamente até que se verifique uma condição para
que se interrompa a repetição.
Algoritmo = linguagem de
programação?
Nunca confunda algoritmos com linguagem de
programação.