SlideShare uma empresa Scribd logo
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Introdução à Programação de
Computadores – Parte II
Prof. Dr. Edson Pimentel
Centro de Matemática, Computação e
Cognição
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Objetivos
 Aprender a redigir rotinas comuns do dia-a-dia
forma de algoritmos
 Conhecer uma técnica para a construção de
algoritmos computacionais
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Relembrando ...
 O funcionamento de qualquer computador
está baseado nessa arquitetura básica:
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
APRENDENDO A
PROGRAMAR
COMPUTADORES:
POR ONDE COMEÇAR ?
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
 O principal componente de um programa de
computador é a sua lógica, ou seja, o que o
computador deve fazer para resolver um problema.
 Devemos então DESCREVER essa lógica numa linguagem
que o computador “entenda”
 É mais fácil começar a programar (organizar a lógica) em
uma linguagem de alto nível.
 Qual é a linguagem de mais alto nível para um ser
humano que fala naturalmente o português?
Aprendendo a Programar Computadores
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
 Vamos dar os primeiros passos na arte de programar
computadores, em uma linguagem mais próxima da
linguagem natural.
 O caminho mais tranquilo é por meio de
ALGORITMOS
 Escrever ALGORITMOS é mais simples porque
focam na solução do problemas e não consideram
“detalhes” de linguagem, etc.
Aprendendo a Programar Computadores
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
ALGORITMOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
É uma sequência finita de instruções, ordenada de
forma lógica para a resolução de uma determinada
tarefa ou problema.
Um algoritmo fixa um padrão de
comportamento a ser seguido, uma
norma de execução, com o objetivo de
resolver um determinado problema.
Definição de ALGORITMO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
No dia-a-dia dizemos que é algo que
é coerente, óbvio, correto.
Lógica  Logos + Ica
Razão Ciência
Estuda o raciocínio/pensamento humano.
Estudo de argumentos
 Argumento é uma sequência de enunciados, na qual um dos
enunciados é a conclusão, derivado a partir dos outros enunciados
(premissas).
É o oposto de
“Isso não tem Lógica”
O que é LÓGICA?
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Todos os peixes vivem na água. (premissa1)
Golfinhos são peixes. (premissa 2)
.·. Golfinhos vivem na água. (conclusão)
Tanto a forma de argumento quando a conclusão são verdadeiras,
apesar de esta última ter sido deduzida a partir de uma premissa
falsa (golfinhos são peixes).
 Um silogismo representa um argumento composto de
duas premissas e uma conclusão. E estabelece uma
conclusão, que pode ser válida ou não.
Silogismo - Aristóteles
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
LÓGICA DE
PROGRAMAÇÃO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
 Falar em lógica de programação significa contextualizar
a lógica na construção de programas.
 Lógica de programação está relacionada ao raciocínio
que precisamos desenvolver para resolver um
problema cuja solução deverá ser implementada em
um computador.
 Encadear pensamentos para atingir determinado
objetivo.
Como pensar como um
programador ?
Lógica de Programação
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
 A habilidade mais importante para um cientista
da computação é a solução de problemas;
 A solução de problemas é a habilidade de
formular questões, pensar criativamente sobre
soluções possíveis e expressar uma solução de
forma clara e precisa;
 E aprender a programar é uma excelente
oportunidade de praticar as habilidades da
solução de problemas.
Solução de Problemas
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
 Diagnosticar a doença de um paciente a partir da
descrição dos sintomas, e medicá-lo.
 Criar um sistema de informação que permita gerir as
entradas/saídas (cargas/descargas) de navios em um
porto marítimo.
 Desenvolver um programa para controle da
movimentação de um robô.
Exemplo de Problemas
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Um algoritmo é uma forma de representar a
solução de um problema por meio de uma
sequência de passos.
 São exemplos de algoritmos:
 Receitas de bolos
 Manuais técnicos
 Guias de montagem
 Programas de computadores
Algoritmo
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
EXEMPLO DE
CONSTRUÇÃO DE
ALGORITMO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Fazer um bolo de chocolate.
Problema
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Qual o resultado esperado?
Saída
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Saída
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
O que é preciso para se obter o
resultado desejado?
Passos
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
O que é preciso para se obter o
resultado desejado?
 Ingredientes
Passos
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Ingredientes:
5 ovos.
250 gramas de margarina cremosa.
2 xícaras (chá) de açúcar.
1 xícara (chá) de farinha de trigo.
1 xícara (chá) de chocolate.
200 gramas de côco ralado.
1 copo de leite.
1 colher (sopa) de fermento.
Dados de Entrada
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Qual a sequência necessária (de uso
dos ingredientes) para se obter o
resultado desejado?
Passos
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Modo de Preparo
 Bata a margarina, as gemas e o açúcar até ficar cremoso.
 Junte o leite, o côco e a farinha e continue batendo.
 Acrescente o fermento e, por último, as claras em neve.
 Unte uma forma com manteiga e leve ao forno para assar.
Processamento
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
OUTRO EXEMPLO DE
ALGORITMO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
 ???
 ???
 ???
 ???
 ???
 ???
 ???
Algoritmo
Quais os passos para realizar a troca de uma lâmpada ?
• Para quem troca lâmpadas com
frequência (ou já viu trocar) os passos
podem ser feitos automaticamente
• Mas e se essa mesma pessoa tiver que
deixar uma RECEITA para uma pessoa
que nunca trocou uma lâmpada efetuar
essa tarefa ?
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
 Pegar uma escada.
 Posicionar a escada embaixo da lâmpada.
 Buscar uma lâmpada nova.
 Subir na escada.
 Retirar a lâmpada velha.
 Colocar a lâmpada nova.
Algoritmo
Quais os passos para realizar a troca de uma lâmpada ?
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
1. ???
2. ???
3. ???
Algoritmo
E se a lâmpada não estiver queimada?
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
1. Acionar o interruptor.
2. Se a lâmpada não acender, então:
 Pegar uma escada.
 Posicionar a escada embaixo da lâmpada.
 Buscar uma lâmpada nova.
 Subir na escada.
 Retirar a lâmpada queimada.
 Colocar a lâmpada nova.
Algoritmo
E se a lâmpada não estiver queimada?
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
 Pode haver vários algoritmos para resolver
um mesmo problema.
 Afinal, cada pessoa pensa e age de forma
diferente.
O desenvolvimento
de algoritmos é um
exercício de
Criatividade
Experiência
Diversas soluções para um problema
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Diferentes algoritmos podem estar corretos,
se levarem ao alcance do objetivo final.
Entretanto, deve-se
procurar desenvolver
algoritmos que resolvam o
problema com menos
esforço e maior
objetividade.
Diversas soluções para um problema
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
ESCREVENDO
ALGORITMOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Instrução/Comando: São frases que indicam as ações a
serem executadas. São compostas de um verbo no
imperativo, ou no infinitivo, mais um complemento.
Exemplo:
Bata (Bater) duas claras em neve.
Ligue (Ligar) os faróis.
Some (Somar) dois números.
Imprima (Imprimir) resultado da soma.
Para escrever ALGORITMOS (programas) é necessário o
uso de INSTRUÇÕES / COMANDOS.
ALGORITMO: instruções ou comandos
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Formalizar a
escrita de
algoritmos.
Escrita na
forma de
pseudocódigo.
Problema Pseudo
linguagem
se...
então...
senão...
Linguagem
de
programação
Java, C,
Pascal, etc
Linguagem
de máquina
Zeros e
uns...
Pseudolinguagem
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Uma linguagem (ou pseudolinguagem) possui duas
características:
 Sintaxe - como escrever os comandos e seus componentes;
 Semântica - o significado de cada comando e conceito.
 A sintaxe e a semântica de uma linguagem de
programação englobam várias ações, como, por exemplo:
 Declarações de Variáveis;
 Operadores;
 Comandos de entrada e de saída;
 Comandos de seleção, repetição etc.
Pseudolinguagem
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
 Bloco de execução é um conjunto de ações que possui
uma função bem definida.
 O início de um bloco é marcado pela palavra início.
 O fim de um bloco é marcado pela palavra fim.
início
<declaração de variáveis>
<comandos>
fim
Bloco de Execução
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
O próprio algoritmo é um bloco de execução. A
sintaxe da definição do bloco de um algoritmo é:
Algoritmo <NomeDoAlgoritmo>
início
<declaração de variáveis>
<comandos>
fimalgoritmo.
Bloco de Execução
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
TÉCNICA PARA A
CONSTRUÇÃO DE
ALGORITMOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
O que
preciso?
(Entrada)
Como chegar ao
que quero?
(Processamento)
O que
quero?
(Saída)
ALGORITMO – Sequência do Programa
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
O que
preciso?
(Entrada)
Como chegar ao
que quero?
(Processamento)
O que
quero?
(Saída)
ALGORITMO – Passos para construção
Na construção do algoritmos devemos identificar primeiro a
SAÍDA de dados, para então pensar nos passos necessários
para chegar nessa saída
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
 Identificar o problema (objetivo) mediante
leitura atenta de seu enunciado
(entendimento).
 Identificar os resultados que devem ser gerados na solução
(saída de dados).
 Identificar no enunciado os dados a
serem fornecidos para o algoritmo (entrada de dados).
 Determinar o que deve ser feito para transformar as
entradas nas saídas desejadas (processamento).
ALGORITMO – Passos para a construção
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Escreva um algoritmo para somar dois números quaisquer.
ALGORITMO – EXEMPLO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Escreva um algoritmo para somar dois números quaisquer.
ALGORITMO – EXEMPLO
 Identificar os resultados que devem ser gerados na solução
(saída de dados)
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Escreva um algoritmo para somar dois números quaisquer
ALGORITMO – EXEMPLO
 Identificar os resultados que devem ser gerados na solução
(saída de dados)
O resultado da soma
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Escreva um algoritmo para somar dois números quaisquer
ALGORITMO – EXEMPLO
 Identificar no enunciado os dados a
serem fornecidos para o algoritmo (entrada de dados)
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Escreva um algoritmo para somar dois números quaisquer.
ALGORITMO – EXEMPLO
 Identificar no enunciado os dados a
serem fornecidos para o algoritmo (entrada de dados).
Os dois números.
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Escreva um algoritmo para somar dois números quaisquer.
ALGORITMO – EXEMPLO
 Determinar o que deve ser feito para transformar as
entradas nas saídas desejadas (processamento).
Somar os dois números.
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Escreva um algoritmo para somar dois números quaisquer.
ALGORITMO – EXEMPLO
Organizando o ALGORITMO numa ordem
coerente.
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Escreva um algoritmo para somar dois números quaisquer.
1. Leia o número X
2. Leia o número Y
3. Some X e Y
4. Mostre o resultado da soma
Entrada SaídaProcessamento
Número X
Número Y
Somar X e Y Resultado
da soma
ALGORITMO – EXEMPLO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
FORBELLONE, A. L. V.; EBERSPACHER, H. F., Lógica de
Programação – A Construção de Algoritmos e Estruturas
de Dados, Prentice Hall, 2005
• CAPÍTULO 1 – Introdução a Lógica de Programação
Leituras Sugeridas
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
RESUMINDO...
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
• As rotinas do dia-a-dia podem ser descritas na forma de
Algoritmos
• Escrever algorimos é mais ou menos como escrever um
MANUAL para que algúem execute uma tarefa
• Um algoritmo computacional (para ser executado por um
computador) precisa seguir alguns padrões de linguagem
• A construção de algoritmos a partir de um enunciado de um
problema requer técnicas de compreensão e refinamento da
solução
• Qual a SAÍDA de dados requerida ?
• Qual a ENTRADA de dados necessária?
• Qual o PROCESSAMENTO necessário para
transformar ENTRADA em SAÍDA ?
Coisas para não esquecer:
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
EXERCÍCIOS DE
LÓGICA
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Um lobo, uma cabra e uma couve têm de atravessar um rio
em um barco que transporta um de cada vez, incluindo o
barqueiro. Como o barqueiro os levará para o outro lado de
forma que a cabra não coma a couve e o lobo não coma a
cabra?
Exercício 1
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Dois homens seguiam por um caminho. Um levava 8 litros de
vinho em um garrafão e o outro levava 8 litros de vinho em
dois garrafões, um com cinco litros e um com três.
Eles beberam o vinho do garrafão maior, de 8 litros, e agora
querem dividir os 8 litros de vinho restante igualmente, para
nenhum dos dois carregar mais peso que o outro. Entretanto,
eles só podem usar como medida, os próprios garrafões: um
de 8 litros, um de 5 e um de 3. Como fazer?
Exercício 2
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
EXERCÍCIOS DE
ALGORITMOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Descreva a sequência de passos necessária para:
 Colocar um carro em movimento.
Exercício 1
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Introdução à Programação de Computadores – Parte 2
Descreva a sequência de passos necessária para:
 Jogar o jogo da velha.
Exercício 2

Mais conteúdo relacionado

PDF
Aula 2 - Introdução à programação de computadores - parte1
PDF
Aula 3 - Algoritmos computacionais - parte 1
ODP
Aula 01 - Algoritmo e Programação
PDF
PDF
Aula 5 - Estruturas de seleção simples e composta - parte 1
PPTX
Lógica de Programação - Algoritmos
ODP
Aula01 - Logica de Programação
PDF
Aula 6 - Estruturas de seleção encadeada - parte 1
Aula 2 - Introdução à programação de computadores - parte1
Aula 3 - Algoritmos computacionais - parte 1
Aula 01 - Algoritmo e Programação
Aula 5 - Estruturas de seleção simples e composta - parte 1
Lógica de Programação - Algoritmos
Aula01 - Logica de Programação
Aula 6 - Estruturas de seleção encadeada - parte 1

Mais procurados (20)

PDF
Introdução à Arquitetura de Computadores
PDF
Lógica de programação em ppt
PPT
Algoritmo 04 - Estruturas de decisão
PDF
Aula 7 - Repetição enquanto - parte 1
PDF
1.Introdução Banco de Dados
PDF
Aula 8 - Repetição PARA ATÉ - parte 1
PPT
Logica Programação. ...
PDF
Aula 3 - Algoritmos computacionais - parte 2
PDF
Aula Lógica de Programação - cap1
PDF
Aula 7 - Repetição enquanto - exemplos
PPT
curso de computador bom e completo
PDF
Lista de exercicios algoritmos com pseudocodigo
PPTX
Aula 01 fundamentos da informática
PPTX
Introdução à Lógica de Programação
PDF
Pseudocódigo ou Portugol (Lógica de Programação)
PDF
Sistemas operacionais
PDF
Introdução à Programação
PPTX
Aula 07 - Visualg e Pseudocódigo
PPTX
Introdução ao Word
PDF
Aula 5 - Estruturas de seleção encadeada - parte 2
Introdução à Arquitetura de Computadores
Lógica de programação em ppt
Algoritmo 04 - Estruturas de decisão
Aula 7 - Repetição enquanto - parte 1
1.Introdução Banco de Dados
Aula 8 - Repetição PARA ATÉ - parte 1
Logica Programação. ...
Aula 3 - Algoritmos computacionais - parte 2
Aula Lógica de Programação - cap1
Aula 7 - Repetição enquanto - exemplos
curso de computador bom e completo
Lista de exercicios algoritmos com pseudocodigo
Aula 01 fundamentos da informática
Introdução à Lógica de Programação
Pseudocódigo ou Portugol (Lógica de Programação)
Sistemas operacionais
Introdução à Programação
Aula 07 - Visualg e Pseudocódigo
Introdução ao Word
Aula 5 - Estruturas de seleção encadeada - parte 2
Anúncio

Destaque (15)

PDF
Aula 15 - Modularização -parte1
PDF
Aula 8 - Validação - parte 1
PDF
Aula 6 - Estruturas de seleção encadeada - parte 2
PDF
Aula 12 - Exercícios vetores unidimensionais
PDF
Aula 16 - Modularização - parte 4 - exercícios
PDF
Aula 10 - Equivalência Java x Portugol Studio - parte 2
PDF
Pi - aula inaugural
PDF
Aula 10 - Equivalência Java x Portugol Studio - parte 1
PDF
Aula 11 - Vetores unidimensionais - parte 2
PDF
Aula 14 - Exercícios matrizes
PDF
Aula 4 - Teste de mesa
PDF
Aula 16 - Modularização - parte 3 - exercícios
PDF
Regras do projeto final
PDF
Aula 13 - Matrizes
PDF
Aula 11 - Vetores unidimensionais - parte 1
Aula 15 - Modularização -parte1
Aula 8 - Validação - parte 1
Aula 6 - Estruturas de seleção encadeada - parte 2
Aula 12 - Exercícios vetores unidimensionais
Aula 16 - Modularização - parte 4 - exercícios
Aula 10 - Equivalência Java x Portugol Studio - parte 2
Pi - aula inaugural
Aula 10 - Equivalência Java x Portugol Studio - parte 1
Aula 11 - Vetores unidimensionais - parte 2
Aula 14 - Exercícios matrizes
Aula 4 - Teste de mesa
Aula 16 - Modularização - parte 3 - exercícios
Regras do projeto final
Aula 13 - Matrizes
Aula 11 - Vetores unidimensionais - parte 1
Anúncio

Semelhante a Aula 2 - Introdução à programação de computadores - parte 2 (20)

PDF
01 fundamentos de programação
PPTX
Aula 2 - Introducao a Algoritmo.pptx
PDF
Algoritmos e lp parte 1-introdução
PDF
Alg aula 01 - introdução tp1
PPTX
001 - INTRODUÇÃO A LOGICA E TÉCNICA DE PROGRAMAÇÃO
PPT
Módulo 1 de PSI
PDF
Aula 06 - Introdução à Ciência da Computação.pdf
PPTX
Introdução à Programação Módulo 1 - GPSI
PDF
Aula 2 - Introduçãoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
PPT
Aula1
PDF
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
PPT
Aula 2 - Introducao e Algoritmos.ppt
PPTX
Mini Aula Introdução a lógica de programação.pptx
PPT
Algoritmos em Pseudocodigo Algoritmos em Pseudocodigo Algoritmos em Pseudocod...
PDF
Apontamentos.pdf
PDF
Lógica de Programção - Módulo 1 - algoritmos-introdução
PPTX
3e88de98635b6c (1)
PDF
Algoritmos e lógica de programação com Python
PPTX
Apresentação Aula Logica Intro aos Algoritmos I modulo.pptx
DOC
Lógica da programação
01 fundamentos de programação
Aula 2 - Introducao a Algoritmo.pptx
Algoritmos e lp parte 1-introdução
Alg aula 01 - introdução tp1
001 - INTRODUÇÃO A LOGICA E TÉCNICA DE PROGRAMAÇÃO
Módulo 1 de PSI
Aula 06 - Introdução à Ciência da Computação.pdf
Introdução à Programação Módulo 1 - GPSI
Aula 2 - Introduçãoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
Aula1
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
Aula 2 - Introducao e Algoritmos.ppt
Mini Aula Introdução a lógica de programação.pptx
Algoritmos em Pseudocodigo Algoritmos em Pseudocodigo Algoritmos em Pseudocod...
Apontamentos.pdf
Lógica de Programção - Módulo 1 - algoritmos-introdução
3e88de98635b6c (1)
Algoritmos e lógica de programação com Python
Apresentação Aula Logica Intro aos Algoritmos I modulo.pptx
Lógica da programação

Último (20)

PPT
História e Evolução dos Computadores domésticos
PPTX
Aula 13 - Tópico Frasal - Argumentação.pptx
PPT
Imperio Bbrasileiro-1822-1889 - aspectos gerais
PDF
GESTÃO DA FASE PRÉ-ANALÍTICA- Recomendações da SBPC-ML (3).pdf
PDF
aulademeiodetransporteemlibras-120304202807-phpapp01_removed.pdf
PDF
DAQUISIÇÃO E DESENVOLVIMENTO DA FALA 12 A 24 MESES
PPTX
A História da Europa na Baixa Idade Média.pptx
PPTX
brasilcolnia2-101027184359-phpapp02.pptx
PPTX
Filosofia Ocidental Antiga 2025 - versão atualizada
PPTX
Slides Lição 7, CPAD, Uma Igreja Que Não Teme A Perseguição, 3Tr25.pptx
PDF
Ementa 2 semestre PEI Orientação de estudo
PDF
saeb_documentos_de_referencia_versao_1.0.pdf
PPTX
Trabalho Cidades sustentáveis ou Utopia.pptx
PPTX
Lição 8 EBD.pptxtudopossonaquelequemimfortalece
PDF
A relação entre funções executivas e desempenho acadêmico em crianças com Tra...
PPTX
INDÚSTRIA_ Histórico da industrialização.pptx
PPTX
Biologia celular: citologia, é o estudo da célula, a unidade básica da vida.
PPTX
Revolução Industrial - Aula Expositiva - 3U4.pptx
PPTX
disciplulado curso preparatorio para novos
PDF
Uma Introdução às Ciências do Alcorão (Islam)
História e Evolução dos Computadores domésticos
Aula 13 - Tópico Frasal - Argumentação.pptx
Imperio Bbrasileiro-1822-1889 - aspectos gerais
GESTÃO DA FASE PRÉ-ANALÍTICA- Recomendações da SBPC-ML (3).pdf
aulademeiodetransporteemlibras-120304202807-phpapp01_removed.pdf
DAQUISIÇÃO E DESENVOLVIMENTO DA FALA 12 A 24 MESES
A História da Europa na Baixa Idade Média.pptx
brasilcolnia2-101027184359-phpapp02.pptx
Filosofia Ocidental Antiga 2025 - versão atualizada
Slides Lição 7, CPAD, Uma Igreja Que Não Teme A Perseguição, 3Tr25.pptx
Ementa 2 semestre PEI Orientação de estudo
saeb_documentos_de_referencia_versao_1.0.pdf
Trabalho Cidades sustentáveis ou Utopia.pptx
Lição 8 EBD.pptxtudopossonaquelequemimfortalece
A relação entre funções executivas e desempenho acadêmico em crianças com Tra...
INDÚSTRIA_ Histórico da industrialização.pptx
Biologia celular: citologia, é o estudo da célula, a unidade básica da vida.
Revolução Industrial - Aula Expositiva - 3U4.pptx
disciplulado curso preparatorio para novos
Uma Introdução às Ciências do Alcorão (Islam)

Aula 2 - Introdução à programação de computadores - parte 2

  • 1. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Introdução à Programação de Computadores – Parte II Prof. Dr. Edson Pimentel Centro de Matemática, Computação e Cognição
  • 2. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Objetivos  Aprender a redigir rotinas comuns do dia-a-dia forma de algoritmos  Conhecer uma técnica para a construção de algoritmos computacionais
  • 3. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Relembrando ...  O funcionamento de qualquer computador está baseado nessa arquitetura básica:
  • 4. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 APRENDENDO A PROGRAMAR COMPUTADORES: POR ONDE COMEÇAR ?
  • 5. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2  O principal componente de um programa de computador é a sua lógica, ou seja, o que o computador deve fazer para resolver um problema.  Devemos então DESCREVER essa lógica numa linguagem que o computador “entenda”  É mais fácil começar a programar (organizar a lógica) em uma linguagem de alto nível.  Qual é a linguagem de mais alto nível para um ser humano que fala naturalmente o português? Aprendendo a Programar Computadores
  • 6. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2  Vamos dar os primeiros passos na arte de programar computadores, em uma linguagem mais próxima da linguagem natural.  O caminho mais tranquilo é por meio de ALGORITMOS  Escrever ALGORITMOS é mais simples porque focam na solução do problemas e não consideram “detalhes” de linguagem, etc. Aprendendo a Programar Computadores
  • 7. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 ALGORITMOS
  • 8. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 É uma sequência finita de instruções, ordenada de forma lógica para a resolução de uma determinada tarefa ou problema. Um algoritmo fixa um padrão de comportamento a ser seguido, uma norma de execução, com o objetivo de resolver um determinado problema. Definição de ALGORITMO
  • 9. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 No dia-a-dia dizemos que é algo que é coerente, óbvio, correto. Lógica  Logos + Ica Razão Ciência Estuda o raciocínio/pensamento humano. Estudo de argumentos  Argumento é uma sequência de enunciados, na qual um dos enunciados é a conclusão, derivado a partir dos outros enunciados (premissas). É o oposto de “Isso não tem Lógica” O que é LÓGICA?
  • 10. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Todos os peixes vivem na água. (premissa1) Golfinhos são peixes. (premissa 2) .·. Golfinhos vivem na água. (conclusão) Tanto a forma de argumento quando a conclusão são verdadeiras, apesar de esta última ter sido deduzida a partir de uma premissa falsa (golfinhos são peixes).  Um silogismo representa um argumento composto de duas premissas e uma conclusão. E estabelece uma conclusão, que pode ser válida ou não. Silogismo - Aristóteles
  • 11. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 LÓGICA DE PROGRAMAÇÃO
  • 12. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2  Falar em lógica de programação significa contextualizar a lógica na construção de programas.  Lógica de programação está relacionada ao raciocínio que precisamos desenvolver para resolver um problema cuja solução deverá ser implementada em um computador.  Encadear pensamentos para atingir determinado objetivo. Como pensar como um programador ? Lógica de Programação
  • 13. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2  A habilidade mais importante para um cientista da computação é a solução de problemas;  A solução de problemas é a habilidade de formular questões, pensar criativamente sobre soluções possíveis e expressar uma solução de forma clara e precisa;  E aprender a programar é uma excelente oportunidade de praticar as habilidades da solução de problemas. Solução de Problemas
  • 14. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2  Diagnosticar a doença de um paciente a partir da descrição dos sintomas, e medicá-lo.  Criar um sistema de informação que permita gerir as entradas/saídas (cargas/descargas) de navios em um porto marítimo.  Desenvolver um programa para controle da movimentação de um robô. Exemplo de Problemas
  • 15. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Um algoritmo é uma forma de representar a solução de um problema por meio de uma sequência de passos.  São exemplos de algoritmos:  Receitas de bolos  Manuais técnicos  Guias de montagem  Programas de computadores Algoritmo
  • 16. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 EXEMPLO DE CONSTRUÇÃO DE ALGORITMO
  • 17. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Fazer um bolo de chocolate. Problema
  • 18. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Qual o resultado esperado? Saída
  • 19. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Saída
  • 20. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 O que é preciso para se obter o resultado desejado? Passos
  • 21. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 O que é preciso para se obter o resultado desejado?  Ingredientes Passos
  • 22. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Ingredientes: 5 ovos. 250 gramas de margarina cremosa. 2 xícaras (chá) de açúcar. 1 xícara (chá) de farinha de trigo. 1 xícara (chá) de chocolate. 200 gramas de côco ralado. 1 copo de leite. 1 colher (sopa) de fermento. Dados de Entrada
  • 23. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Qual a sequência necessária (de uso dos ingredientes) para se obter o resultado desejado? Passos
  • 24. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Modo de Preparo  Bata a margarina, as gemas e o açúcar até ficar cremoso.  Junte o leite, o côco e a farinha e continue batendo.  Acrescente o fermento e, por último, as claras em neve.  Unte uma forma com manteiga e leve ao forno para assar. Processamento
  • 25. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 OUTRO EXEMPLO DE ALGORITMO
  • 26. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2  ???  ???  ???  ???  ???  ???  ??? Algoritmo Quais os passos para realizar a troca de uma lâmpada ? • Para quem troca lâmpadas com frequência (ou já viu trocar) os passos podem ser feitos automaticamente • Mas e se essa mesma pessoa tiver que deixar uma RECEITA para uma pessoa que nunca trocou uma lâmpada efetuar essa tarefa ?
  • 27. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2  Pegar uma escada.  Posicionar a escada embaixo da lâmpada.  Buscar uma lâmpada nova.  Subir na escada.  Retirar a lâmpada velha.  Colocar a lâmpada nova. Algoritmo Quais os passos para realizar a troca de uma lâmpada ?
  • 28. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 1. ??? 2. ??? 3. ??? Algoritmo E se a lâmpada não estiver queimada?
  • 29. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 1. Acionar o interruptor. 2. Se a lâmpada não acender, então:  Pegar uma escada.  Posicionar a escada embaixo da lâmpada.  Buscar uma lâmpada nova.  Subir na escada.  Retirar a lâmpada queimada.  Colocar a lâmpada nova. Algoritmo E se a lâmpada não estiver queimada?
  • 30. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2  Pode haver vários algoritmos para resolver um mesmo problema.  Afinal, cada pessoa pensa e age de forma diferente. O desenvolvimento de algoritmos é um exercício de Criatividade Experiência Diversas soluções para um problema
  • 31. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Diferentes algoritmos podem estar corretos, se levarem ao alcance do objetivo final. Entretanto, deve-se procurar desenvolver algoritmos que resolvam o problema com menos esforço e maior objetividade. Diversas soluções para um problema
  • 32. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 ESCREVENDO ALGORITMOS
  • 33. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Instrução/Comando: São frases que indicam as ações a serem executadas. São compostas de um verbo no imperativo, ou no infinitivo, mais um complemento. Exemplo: Bata (Bater) duas claras em neve. Ligue (Ligar) os faróis. Some (Somar) dois números. Imprima (Imprimir) resultado da soma. Para escrever ALGORITMOS (programas) é necessário o uso de INSTRUÇÕES / COMANDOS. ALGORITMO: instruções ou comandos
  • 34. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Formalizar a escrita de algoritmos. Escrita na forma de pseudocódigo. Problema Pseudo linguagem se... então... senão... Linguagem de programação Java, C, Pascal, etc Linguagem de máquina Zeros e uns... Pseudolinguagem
  • 35. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Uma linguagem (ou pseudolinguagem) possui duas características:  Sintaxe - como escrever os comandos e seus componentes;  Semântica - o significado de cada comando e conceito.  A sintaxe e a semântica de uma linguagem de programação englobam várias ações, como, por exemplo:  Declarações de Variáveis;  Operadores;  Comandos de entrada e de saída;  Comandos de seleção, repetição etc. Pseudolinguagem
  • 36. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2  Bloco de execução é um conjunto de ações que possui uma função bem definida.  O início de um bloco é marcado pela palavra início.  O fim de um bloco é marcado pela palavra fim. início <declaração de variáveis> <comandos> fim Bloco de Execução
  • 37. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 O próprio algoritmo é um bloco de execução. A sintaxe da definição do bloco de um algoritmo é: Algoritmo <NomeDoAlgoritmo> início <declaração de variáveis> <comandos> fimalgoritmo. Bloco de Execução
  • 38. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 TÉCNICA PARA A CONSTRUÇÃO DE ALGORITMOS
  • 39. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 O que preciso? (Entrada) Como chegar ao que quero? (Processamento) O que quero? (Saída) ALGORITMO – Sequência do Programa
  • 40. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 O que preciso? (Entrada) Como chegar ao que quero? (Processamento) O que quero? (Saída) ALGORITMO – Passos para construção Na construção do algoritmos devemos identificar primeiro a SAÍDA de dados, para então pensar nos passos necessários para chegar nessa saída
  • 41. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2  Identificar o problema (objetivo) mediante leitura atenta de seu enunciado (entendimento).  Identificar os resultados que devem ser gerados na solução (saída de dados).  Identificar no enunciado os dados a serem fornecidos para o algoritmo (entrada de dados).  Determinar o que deve ser feito para transformar as entradas nas saídas desejadas (processamento). ALGORITMO – Passos para a construção
  • 42. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Escreva um algoritmo para somar dois números quaisquer. ALGORITMO – EXEMPLO
  • 43. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Escreva um algoritmo para somar dois números quaisquer. ALGORITMO – EXEMPLO  Identificar os resultados que devem ser gerados na solução (saída de dados)
  • 44. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Escreva um algoritmo para somar dois números quaisquer ALGORITMO – EXEMPLO  Identificar os resultados que devem ser gerados na solução (saída de dados) O resultado da soma
  • 45. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Escreva um algoritmo para somar dois números quaisquer ALGORITMO – EXEMPLO  Identificar no enunciado os dados a serem fornecidos para o algoritmo (entrada de dados)
  • 46. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Escreva um algoritmo para somar dois números quaisquer. ALGORITMO – EXEMPLO  Identificar no enunciado os dados a serem fornecidos para o algoritmo (entrada de dados). Os dois números.
  • 47. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Escreva um algoritmo para somar dois números quaisquer. ALGORITMO – EXEMPLO  Determinar o que deve ser feito para transformar as entradas nas saídas desejadas (processamento). Somar os dois números.
  • 48. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Escreva um algoritmo para somar dois números quaisquer. ALGORITMO – EXEMPLO Organizando o ALGORITMO numa ordem coerente.
  • 49. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Escreva um algoritmo para somar dois números quaisquer. 1. Leia o número X 2. Leia o número Y 3. Some X e Y 4. Mostre o resultado da soma Entrada SaídaProcessamento Número X Número Y Somar X e Y Resultado da soma ALGORITMO – EXEMPLO
  • 50. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 FORBELLONE, A. L. V.; EBERSPACHER, H. F., Lógica de Programação – A Construção de Algoritmos e Estruturas de Dados, Prentice Hall, 2005 • CAPÍTULO 1 – Introdução a Lógica de Programação Leituras Sugeridas
  • 51. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 RESUMINDO...
  • 52. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 • As rotinas do dia-a-dia podem ser descritas na forma de Algoritmos • Escrever algorimos é mais ou menos como escrever um MANUAL para que algúem execute uma tarefa • Um algoritmo computacional (para ser executado por um computador) precisa seguir alguns padrões de linguagem • A construção de algoritmos a partir de um enunciado de um problema requer técnicas de compreensão e refinamento da solução • Qual a SAÍDA de dados requerida ? • Qual a ENTRADA de dados necessária? • Qual o PROCESSAMENTO necessário para transformar ENTRADA em SAÍDA ? Coisas para não esquecer:
  • 53. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 EXERCÍCIOS DE LÓGICA
  • 54. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Um lobo, uma cabra e uma couve têm de atravessar um rio em um barco que transporta um de cada vez, incluindo o barqueiro. Como o barqueiro os levará para o outro lado de forma que a cabra não coma a couve e o lobo não coma a cabra? Exercício 1
  • 55. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Dois homens seguiam por um caminho. Um levava 8 litros de vinho em um garrafão e o outro levava 8 litros de vinho em dois garrafões, um com cinco litros e um com três. Eles beberam o vinho do garrafão maior, de 8 litros, e agora querem dividir os 8 litros de vinho restante igualmente, para nenhum dos dois carregar mais peso que o outro. Entretanto, eles só podem usar como medida, os próprios garrafões: um de 8 litros, um de 5 e um de 3. Como fazer? Exercício 2
  • 56. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 EXERCÍCIOS DE ALGORITMOS
  • 57. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Descreva a sequência de passos necessária para:  Colocar um carro em movimento. Exercício 1
  • 58. Bacharelado em Ciência e Tecnologia Processamento da Informação Introdução à Programação de Computadores – Parte 2 Descreva a sequência de passos necessária para:  Jogar o jogo da velha. Exercício 2