Escolar Documentos
Profissional Documentos
Cultura Documentos
Lógica de
Programação
Prof. Flavius Gorgônio
Semana 1
Uma breve introdução ao pensamento computacional
2
Uma breve revisão
Você conhece esses termos?
➢ Computador
➢ Hardware
➢ Software
➢ Algoritmo
➢ Programação
➢ Linguagem de programação
➢ Programa de computador
➢ Código fonte
➢ Código executável
3
Esse tal computador
Como podemos descrever o
computador?
➢ É uma máquina
➢ Inteligente?
➢ Criativo?!
➢ Rápido?
➢ O que o torna especial e
diferente da maioria das
outras máquinas criadas
anteriormente?
➢ Pode substituir os humanos?
4
Diferenças entre hardware e software
5
Mas, e o peopleware?
De que adianta hardware e software,
se não temos o peopleware?
6
Semelhanças entre computadores e liquidificadores
. Ing Passos para a utilização do liquidificador:
red
ient
es 1. Destampar o copo
2. Introduzir os ingredientes no copo
através da abertura superior
3. Tampar o copo
Alimentos
4. Ligar o processador
Processados 5. Aguardar alguns minutos
6. Desligar o processador
7. Destampar o copo
8. Servir o conteúdo
Processador
7
Semelhanças entre computadores e liquidificadores
. Ing .
red Ent
ient rad
es a
Alimentos
Saída
Processados
Processador Processamento
8
Semelhanças entre computadores e liquidificadores
. Passos para a utilização do computador:
En
tra
da 1. Ligar o computador
2. Selecionar o programa desejado
3. Introduzir os dados no programa
a 4. Solicitar o processamento
Saíd
5. Aguardar alguns minutos
6. Obter os resultados desejados
7. Finalizar o programa
8. Desligar o computador
Processamento
9
Semelhanças entre computadores e liquidificadores
Uma das principais funções dos sistemas .
Da
computacionais é o processamento de dados do
s
Sistemas computacionais que têm como
objetivo transformar dados em informações
são conhecidos como Sistemas de Informação es
rm açõ
Info
Tais sistemas recebem os dados brutos (sem
processamento), processam esses dados e os
transformam em informações (dados
processados) para dar suporte à tomada de
decisão
Processamento
10
Bolo de Caneca no Micro-ondas
Algoritmo
Ingredientes
substantivo masculino
➢ 1 ovo pequeno
ETIM (origem da palavra): latim medv. algorismus, ➢ 4 colheres de sopa de leite
com influência do grego arithmós 'número' ➢ 3 colheres de sopa de óleo
1. matemática ➢ 2 colheres de sopa rasas de chocolate em pó
➢ 4 colheres de sopa rasas de açúcar
sequência finita de regras, raciocínios ou
operações que, aplicada a um número finito de
➢ 4 colheres de sopa rasas de farinha de trigo
dados, permite solucionar classes semelhantes de ➢ 1 colher de café rasa de fermento em pó
problemas.
2. informática
Fonte: https://receitas.globo.com/bolo-de-caneca-microondas-4d54384052e0b20f760006e9.ghtml
11
Algoritmos computacionais e não computacionais
12
Passos do algoritmo:
Atividade 1 1.
2.
Passar o cartão no caixa eletrônico
Aguardar a vez de ser atendido
3. Sair do banco
Organize os passos do algoritmo ao
lado, de forma a representar uma 4. Entrar na fila do caixa eletrônico
sequência correta de ações que 5. Digitar a senha
permita a uma pessoa sacar 6. Entrar no banco
dinheiro em um caixa eletrônico
7. Conferir o valor em dinheiro
Anote os passos na ordem correta 8. Informar o valor a ser retirado
Você gostaria de acrescentar mais 9. Procurar a fila do caixa eletrônico
algum(ns) passo(s) a este algoritmo? 10. Pegar o comprovante do saque, o cartão e o dinheiro
Se sim, qual(is)?
13
3
Considerando que a raposa
Atividade 2 2 não pode ser deixada sozinha
com a galinha em uma das
No caminho de volta para casa, margens, nem a galinha pode
1 surgiu um problema, pois há ser deixada sozinha com o saco
A raposa, a galinha e o milho um rio cuja travessia precisa de milho, encontre uma
ser realizada de canoa e na solução para que o fazendeiro
O Sr. Josafá Zendeiro mora em
canoa só há espaço para ele e consiga transportar todos os
um pequeno sítio na zona rural
mais um dos itens adquiridos, itens até o outro lado do rio.
de Caicoland. No último
embora ele possa realizar
sábado, ele foi à feira na cidade
várias viagens.
e adquiriu os seguintes itens:
uma raposa, uma galinha e um
saco de milho.
14
Atividade 2
Como traçar uma estratégia para
M R
resolver esse problema?
Passo 1: F leva G
Passo 2: F retorna sozinho
Passo 3: ...
15
As freiras e os canibais
Atividade 3
No mesmo rio citado no problema anterior, pouco depois que o
Sr. Josafá Zendeiro conseguiu resolver seu problema, surgiu um
outro desafio.
16
Algumas questões para reflexão:
Programação
2. E desenvolver jogos para videogames é
programação?
3. Alguém que não tenha desenvolvido o
aplicativo, mas seja responsável pela
Programação é o processo de escrita, sua instalação, configuração, suporte e
17
"Se você quer uma profissão do futuro, entenda de “Ser desenvolvedor é uma viagem onde a
software, de programação. Isso vale para todas as áreas" próxima parada é a solução de um problema”
Prof. Sílvio Meira, CIn/UFPE Pablo Picasso, pintor espanhol, além de ser escultor,
ceramista, cenógrafo, poeta e dramaturgo
Escreva o meu
nome na tela!!!
20
Há um problema de comunicação 10010100
10101101
Eu falo
Português
Ou alguma outra
linguagem
natural
21
Para ilustrar esse problema, imagine que você chegasse à
Universidade no primeiro dia de aula e encontrasse a
seguinte mensagem:
22
Precisamos de um intérprete
23
Conversa entre humanos e computadores
1. li ina
ngu máqu
age de
mh
uma
ag em
na g u
in
2. l
4. li i na
ngu qu
age má
mh de
uma
na a g em
gu
.3 lin
24
Como funciona isso na Programação?
Código fonte em uma Compilador ou
linguagem de programação interpretador
Hardware
Código executável em
25
linguagem de máquina Sistema operacional
Programador
Produz seu código fonte usando uma Linguagem de Programação
Interpretador ou Compilador
Sistema Operacional
Executa o código de máquina em um determinado hardware
Este programa executável pode ser Para executar o seu programa em outro
distribuído com outros usuários da mesma computador, é necessário levar o código
plataforma (hardware e sistema operacional) fonte e possuir o interpretador instalado
Caso o usuário mude de plataforma, será Caso o usuário mude de plataforma, será
necessário criar uma nova versão para a nova necessário obter uma versão do
plataforma interpretador para a nova plataforma
27
Transformando algoritmos em programas
Problema:
Média 8.0
28
Codificando o algoritmo em uma linguagem
program MediaAritmetica; Linguagem Python
var
nota1,nota2,nota3,soma,media:real;
begin print("Cálculo da média")
writeln("Cálculo da média"); nota1 = input("Digite a 1a. nota: ")
write("Digite a 1a. nota: "); nota1 = float(nota1)
readln(nota1); nota2 = input("Digite a 2a. nota: ")
write("Digite a 2a. nota: "); nota2 = float(nota2)
readln(nota2); nota3 = input("Digite a 3a. nota: ")
write("Digite a 3a. nota: "); nota3 = float(nota3)
readln(nota3); soma = nota1 + nota2 + nota3
soma := nota1 + nota2 + nota3; media = soma / 3
media := soma / 3; print("Sua média foi: %.1f"%media)
writeln("Sua média foi: ", media);
end.
Linguagem Pascal
29
Por que utilizamos Python?
Alguns motivos para usar Python:
1. Fácil de aprender
2. Simples de codificar
3. Tipagem dinâmica
4. Linguagem interpretada
5. Moderna e atualizada
6. Recursos de acesso à internet
7. Imperativa e/ou orientada a objetos
8. Ampla quantidade de bibliotecas
9. Grande número de desenvolvedores
10. Ferramentas gratuitas
11. Entre outros...
30
IDE em nuvem: Ambiente Replit (https://replit.com/)
31
Experimente agora!
Siga os seguintes passos:
#####################################
1. Abra o site: https://replit.com ### Primeiro Programa em Python ###
2. Crie sua conta, se não tiver uma
#####################################
3. Crie um novo programa, clicando no
botão +
4. Escolha a linguagem Python print("Olá, pessoal")
5. Dê um nome para o seu programa
print("Bem-vindos ao curso de ALP")
6. Clique em Create repl
7. Copie o código ao lado e cole na print("Até breve!")
coluna central
8. Clique no botão Run ᗎ
9. Veja o resultado na coluna da direita
10. Você conseguiu!
32
Para saber mais...
FEIJÓ, B.; CLUA, E.; SILVA, F. S. C. Introdução à Ciência da Computação com Jogos: Aprendendo a Programar com
Entretenimento. Rio de Janeiro: Elsevier, 2010.
JOYANES AGUILAR, L. Fundamentos de Programação: Algoritmos, Estruturas de Dados e Objetos. São Paulo: McGraw-Hill,
2008.
MENEZES, N. N. C. Introdução à Programação com Python: Algoritmos e lógica de programação para iniciantes. São Paulo:
Novatec Editora, 2008.
DIA A DIA, BIT A BIT, por Silvio Meira, disponível em: http://smeira.blog.terra.com.br/
Wikipédia
➢ http://pt.wikipedia.org/wiki/Programação_de_computadores
➢ http://pt.wikipedia.org/wiki/Linguagem_de_programação
33
Copyright
Este material é para uso exclusivo durante as aulas da disciplina DCT1101 - ALGORITMOS E LÓGICA DE
PROGRAMAÇÃO, do curso de Bacharelado em Sistemas de Informação da Universidade Federal do Rio
Grande do Norte, não estando autorizada a sua publicação, compartilhamento, divulgação ou
utilização em outros contextos diferentes dos aqui apresentados.
Todos os textos, imagens, exemplo de código e demais materiais utilizados nesses slides são apenas
para fins didáticos, o autor e a instituição não permitem a sua utilização sem autorização expressa,
assim como não se responsabilizam pelo seu uso indevido ou por danos causados pelos mesmos. 34