Sie sind auf Seite 1von 28

Introdução à Computação

Instituto de Informática
Lógica de programação

Os computadores são máquinas eletrônicas que


conseguem calcular rapidamente

1. Eles têm conhecimento limitado e seguem ordens


2. Você, o programador, deve guiá-lo à sua tarefa
Lógica de programação

Para comunicar com o computador, você deve entender:

1. Como ele “pensa”


2. Uma linguagem que ele entenda
Lógica de Programação

PROBLEMA ALGORITMO PROGRAMA TESTE

● Narrativa ● C
● Fluxograma ● Java
● Pseudocódigo ● Python
Lógica de Programação

PROBLEMA ALGORITMO PROGRAMA TESTE

Requisitos do problema: Qual é o problema a ser resolvido?

● Entradas
● Cálculos
● Casos especiais
● Saídas
Lógica de Programação
Lógica de Programação

● Dê exemplos de entradas
● Dê exemplos de saídas
Lógica de Programação
Lógica de Programação

PROBLEMA ALGORITMO PROGRAMA TESTE

Desenvolvimento do algoritmo: Como poderá ser resolvido?

● Algoritmo: conjunto de ações para a resolução de um


problema em um número finito de passos
● Independente de linguagem de programação
Lógica de Programação

● Fluxograma
Lógica de Programação

● Pseudocódigo
Lógica de Programação

● Narrativa =
“receita”
Lógica de Programação

PROBLEMA ALGORITMO PROGRAMA TESTE

Codificação: Como implementar para a linguagem desejada

● Linguagem mais simples e precisa, que o computador


compreenda
● Nosso caso, linguagem C
Lógica de Programação
Lógica de Programação

PROBLEMA ALGORITMO PROGRAMA TESTE

Verificar se o programa faz o que deveria fazer:

● Todo código pode ter erros (bugs)


● Deve sempre testar o programa
ERROS
ERROS
Lógica de Programação

● Erro de sintaxe
○ Falha na tradução do algoritmo em C
○ Compilador vai detectar e dar dicas
○ Fácil de corrigir

● Erro de semântica
○ Resultados inesperados
○ Erro no algoritmo
○ Mais difíceis de corrigir
Exercício
Exercício

Pegue uma folha de rascunho e crie um algoritmo em


formato de narrativa que seja mais detalhado possível para
ser gravado no robô trocador de lâmpadas.
Exercício

Escreva um algoritmo que consiga colocar em ordem as


cartas de um naipe do baralho
Exercício

Leia o pseudocódigo a seguir

1. Leia Valor
2. Leia Quantidade
3. Total = Valor * Quantidade
4. Escreva Total

● Quais são os dados de entrada e saída?


● Quais linhas são somente de processamento?
Exercício

Execute para os valores de A = 25 e B = 7.

1. Leia A
2. Leia B
3. C=0
4. Enquanto A >= B faça {
5. A=A–B
6. C=C+1
7. }
8. Escreva C
9. Escreva A
Lista de Exercícios

1. Existem 3 esferas e uma balança. Duas esferas tem o


mesmo peso e a outra tem um peso maior. Descobrir qual
a esfera de peso diferente, realizando-se apenas uma
pesagem numa balança de dois pratos.
2. Como obter exatamente 4 litros de água dispondo de dois
recipientes com capacidades de 3 litros e 5 litros?
3. Criar algoritmo que determina o menor divisor maior que
1 de um inteiro dado.
RESPOSTAS
RESPOSTAS
Resposta 1

1. Escolha duas esferas.


2. Coloque cada uma das esferas escolhidas num dos
pratos da balança.
3. Se a balança ficar equilibrada, forneça como resposta a
esfera não escolhida; caso contrário, forneça como
resposta a esfera do prato que está num nível mais baixo.
Resposta 2

1. Encha o recipiente de 3 litros.


2. Transfira o conteúdo do recipiente de 3 litros para o recipiente de 5 litros.
3. Encha o recipiente de 3 litros.
4. Com o conteúdo do recipiente de 3 litros, complete o recipiente de 5
litros.
5. Esvazie o recipiente de 5 litros.
6. Transfira o conteúdo do recipiente de três litros para o recipiente de 5
litros.
7. Encha o recipiente de 3 litros.
8. Transfira o conteúdo do recipiente de 3 litros para o recipiente de 5 litros.
Resposta 2 - Alternativa

1. Encha o recipiente de 5 litros.


2. Com o conteúdo do recipiente de 5 litros, encha o de 3
litros.
3. Esvazie o recipiente de 3 litros.
4. Transfira o conteúdo do recipiente de 5 litros para o
recipiente de 3 litros.
5. Encha o recipiente de 5 litros.
6. Com o conteúdo do recipiente de 5 litros, complete o
recipiente de 3 litros.
Resposta 3

1. Chame de N o inteiro dado.


2. Faça D = 2.
3. Repita 3.1 enquanto Resto(N, D) =! 0
a. Substitua D por D + 1
4. Forneça D para o divisor procurado

Das könnte Ihnen auch gefallen