Buscar

Algoritmos e Lógica de Programação

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 36 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 36 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 36 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Algoritmos e Lógica
Gilson Amorim
Programação e Algorítmo
• “A programação é a arte de fazer com que o computador 
faça exatamente o que desejamos que ele faça.”
• “Programar é criar uma rotina para que, seguindo uma lógica passo-a-
passo, possamos alcançar a resolução de um problema 
computacional.”
• A esse passo-a-passo chamamos de ALGORITMO
Exemplo de Algoritmo do dia-a-dia
Algoritmo
• “Algoritmo é um conjunto finito de regras que provê 
uma sequência de operações para resolver um tipo de 
problema específico, em um tempo determinado” 
(KNUTH, 1997).
• Sempre termina
•Passos em tempo finito
• Sequência lógica
Algoritmo
• Sem ambiguidade
•Resulta em saída
•Nem sempre há entrada
•Resolve um problema
• Tem utilidade
• “Uma solução” e não “a solução”
Algoritmo de “trocar uma lâmpada” – várias 
soluções
Exemplos numéricos de algoritmos
•Qual o próximo número da sequência?
• 2, 4, 6, 8, ____
• 1, 1, 2, 3, 5, 8, 13 ___
• 0, 1, 4, 9, 16, 25, ___
•Como não foi possível definir uma lógica não 
conseguiremos construir um algoritmo
Encontrar o Algoritmo
•Um problema tem que ter uma lógica para que tenha 
solução
• Importante: muitas vezes, pode ser difícil a primeira 
vista encontrar a lógica, mas isso vai ficando cada vez 
mais fácil com a prática
Fases Básicas da Construção de Algoritmos
• Entrada: Valores que serão utilizados pelo algoritmo para apresentar 
uma solução, geralmente fornecido pelo usuário.
Fases Básicas da Construção de Algoritmos
• Processamento: Procedimento utilizados para se chegar ao 
resultado final. São executados no processador do 
computador.
• Saída: São os dados processados, apresentados em 
dispositivos de saída.
Outro exemplo de algoritmo do dia-a-dia
Exemplo numérico de algoritmo
•Média aritmética de dois números
• Entrada: os dois números
•Processamento: o cálculo da média (que seria somar 
os dois números e dividir por dois)
• Saída: a média
Representação de Algoritmos
•Descrição Narrativa
•Fluxograma e 
•Linguagem Algorítmica ou Pseudocódigo.
Representação de Algoritmos
• Descrição Narrativa – Fazer uso do português normal, descrevendo o 
principais passo para a resolução do problema.
Descrição Narrativa
Descrição Narrativa
Descrição Narrativa
• Vantagem – Todos que conhecem o idioma escolhido não terão 
dificuldades em entender ou elaborar a descrição narrativa.
• Desvantagens 
• Não há um padrão
• Imprecisão ou ambiguidade
Fluxograma
• Ferramenta muito utilizada na área de Administração
• É uma forma intermediária entre a descrição narrativa 
e pseudocódigo
•Além dos símbolos apresentados a seguir utiliza-se as 
setas indicando o fluxo do algoritmo
Fluxograma
Fluxograma – exemplo do cálculo da média 
de um aluno – versão 1
Fluxograma – exemplo do cálculo da média 
de um aluno – versão 2
Fluxograma
•Vantagens
• Conhecida em outras áreas além da informática
• Figuras falam mais que palavras
•Desvantagens
• Dá pouca atenção aos dados
• Para algoritmos muito complexos os fluxos podem se 
tornar confusos, com linhas cruzadas
Linguagem Algorítmica ou Pseudocódigo
• Supre a deficiências das representações anteriores
•Os comandos são em português, mas lembra um 
pouco a estrutura de uma linguagem de programação 
estruturada
Linguagem Algorítmica ou Pseudocódigo –
Exemplo de média de um aluno
Linguagem Algorítmica ou Pseudocódigo
•Vantagens
• É a forma de representação mais poderosa de todas
•A passagem de linguagem algorítmica para uma 
linguagem de programação estruturada é quase 
imediata
• Já existem ferramentas computacionais que 
utilizam esta linguagem (nós utilizaremos o VisuAlg)
Linguagem Algorítmica ou Pseudocódigo
•Desvantagens
•Não é uma linguagem de programação
•Não é padronizada
Conceitos Básicos sobre Linguagens
•“Lógica é a ciência que estuda as leis do 
raciocínio; é a correção/validação do 
pensamento; é o encadeamento, ordenação de 
ideias; É a arte de bem pensar.”
•Exemplo: se Rosa é mãe de Ana; Paula é filha de 
Rosa e Júlia é filha de Ana. Então, a partir do que foi 
dito, podemos dizer que Júlia é neta de Rosa e 
sobrinha de Paula.
Conceitos Básicos sobre Linguagens
• “Lógica de Programação é o encadeamento lógico de 
instruções para o desenvolvimento de programas.”
• “Programa é a implementação das instruções de um 
algoritmo em uma linguagem de programação.”
• “Uma instrução representa um passo de um algoritmo.”
• Linguagem de programação é um conjunto finito de 
palavras, comandos e instruções escritos com a finalidade 
de orientar a execução de uma tarefa no computador. 
Conceitos Básicos sobre Linguagens
• Exemplos de linguagens de programação: C, Pascal, Cobol, Fortran, 
C#, PHP etc.
• Qualquer linguagem de programação deve estar entre os dois 
extremos: o da linguagem natural e o da linguagem de máquina
Conceitos Básicos sobre Linguagens
• Exemplo de tradução de uma linguagem de programação no 
computador
Conceitos Básicos sobre Linguagens
•Compilador: traduz de uma vez só todo o programa 
escrito em linguagem de alto nível (código-fonte) para 
um programa equivalente escrito em linguagem de 
máquina (código-objeto).
• Interpretador: traduz (sem gerar código-objeto) e em 
seguida executa, uma a uma, as instruções de um 
programa em linguagem de alto nível (código-fonte)
Compilador
Interpretador
Aplicação
• Ler um valor de temperatura em Fahrenheit e calcular 
o seu valor correspondente em Celsius e, depois, 
apresentar esse valor ao usuário.
Aplicação
Aplicação

Outros materiais