Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

ALGORITMOS E PROGRAMAÇÃO 
DE COMPUTADORES I
Noção de Algoritmos
CONSTRUÇÃO DE PROGRAMAS
ALGORITMO
Um algoritmo é uma sequência de passos 
que visam atingir um objetivo bem definido.
-Pessoas têm inteligência e habilidade 
racional: fazem perguntas para se 
esclarecer.
-Computador não tem senso próprio: deve 
receber instruções explícitas e precisas 
(algoritmos).
ALGORITMO
Um algoritmo correto deve possuir 3 
qualidades:
Cada passo do algoritmo deve ser uma 
instrução que possa ser realizada.
A ordem dos passos deve ser 
precisamente determinada.
O algoritmo deve ter fim.
ALGORITMO
Primeiro algoritmo: trocar uma lâmpada 
no teto.
-Quais serão as instruções?
-Usaremos o português coloquial.
ALGORITMO
Início
Remova a lâmpada queimada
Coloque a nova lâmpada
Fim.
Algoritmo para trocar uma lâmpada no teto
ALGORITMO
Início
Remova a lâmpada queimada
Coloque a nova lâmpada
Fim.
Algoritmo para trocar uma lâmpada no teto
O que é necessário para remover a 
lâmpada queimada?
ALGORITMO
- Posicione a escada debaixo da lâmpada 
queimada
- Suba na escada até que a lâmpada possa ser 
alcançada
- Gire a lâmpada queimada no sentido anti-horário 
até que se solte
Algoritmo para trocar uma lâmpada no teto
ALGORITMO
Início
Remova a lâmpada queimada
Coloque a nova lâmpada
Fim.
Algoritmo para trocar uma lâmpada no teto
O que é necessário para colocar a 
lâmpada nova?
ALGORITMO
- Escolha uma lâmpada da mesma potência da 
queimada
- Posicione a nova lâmpada no soquete
- Gire a lâmpada no sentido horário até que ela 
se firme
- Desça da escada
Algoritmo para trocar uma lâmpada no teto
ALGORITMO
Início
Posicione a escada debaixo da lâmpada queimada
Suba na escada até que a lâmpada possa ser 
alcançada
Gire a lâmpada queimada no sentido anti-horário até 
que se solte
Escolha uma lâmpada da mesma potência da 
queimada
Posicione a nova lâmpada no soquete
Gire a lâmpada no sentido horário até que ela se firme
Desça da escada
Fim.
Algoritmo para trocar uma lâmpada no teto
ALGORITMO
Início
Posicione a escada debaixo da lâmpada queimada
Suba na escada até que a lâmpada possa ser 
alcançada
Gire a lâmpada queimada no sentido anti-horário até 
que se solte
Escolha uma lâmpada da mesma potência da 
queimada
Posicione a nova lâmpada no soquete
Gire a lâmpada no sentido horário até que ela se firme
Desça da escada
Fim.
Algoritmo para trocar uma lâmpada no teto
Sequenciamento: estabelece um padrão 
de comportamento. As ações devem ser 
executadas linearmente, em sequência, 
uma após a outra.
ALGORITMO
Início
Posicione a escada debaixo da lâmpada queimada
Suba na escada até que a lâmpada possa ser 
alcançada
Gire a lâmpada queimada no sentido anti-horário até 
que se solte
Escolha uma lâmpada da mesma potência da 
queimada
Posicione a nova lâmpada no soquete
Gire a lâmpada no sentido horário até que ela se firme
Desça da escada
Fim.
Algoritmo para trocar uma lâmpada no teto
E se a lâmpada não estiver 
queimada?
ALGORITMO
Início
Posicione a escada debaixo da lâmpada queimada
Suba na escada até que a lâmpada possa ser 
alcançada
Gire a lâmpada queimada no sentido anti-horário até 
que se solte
Escolha uma lâmpada da mesma potência da 
queimada
Posicione a nova lâmpada no soquete
Gire a lâmpada no sentido horário até que ela se firme
Desça da escada
Fim.
Algoritmo para trocar uma lâmpada no teto
E se a lâmpada não estiver 
queimada?
Precisamos de um teste seletivo!
ALGORITMO
Início
Acionar o interruptor
Se a lâmpada não acender, então:
Posicione a escada debaixo da lâmpada queimada
Suba na escada até que a lâmpada possa ser alcançada
Gire a lâmpada queimada no sentido anti-horário até que se solte
Escolha uma lâmpada da mesma potência da queimada
Posicione a nova lâmpada no soquete
Gire a lâmpada no sentido horário até que ela se firme
Desça da escada
Fim.
Algoritmo para trocar uma lâmpada no teto
ALGORITMO
Início
Acionar o interruptor
Se a lâmpada não acender, então:
Posicione a escada debaixo da lâmpada queimada
Suba na escada até que a lâmpada possa ser alcançada
Gire a lâmpada queimada no sentido anti-horário até que se solte
Escolha uma lâmpada da mesma potência da queimada
Posicione a nova lâmpada no soquete
Gire a lâmpada no sentido horário até que ela se firme
Desça da escada
Fim.
Algoritmo para trocar uma lâmpada no teto
Teste seletivo: determina qual conjunto 
de ações deve ser seguido, dependendo 
do resultado da condição resultar em 
verdadeiro ou falso.
ALGORITMO
Início
Acionar o interruptor
Se a lâmpada não acender, então:
Posicione a escada debaixo da lâmpada queimada
Suba na escada até que a lâmpada possa ser alcançada
Gire a lâmpada queimada no sentido anti-horário até que se solte
Escolha uma lâmpada da mesma potência da queimada
Posicione a nova lâmpada no soquete
Gire a lâmpada no sentido horário até que ela se firme
Desça da escada
Fim.
Algoritmo para trocar uma lâmpada no teto
E se a lâmpada nova 
estiver queimada?
ALGORITMO
Início
Acionar o interruptor
Se a lâmpada não acender, então:
 Posicione a escada debaixo da lâmpada queimada
 Suba na escada até que a lâmpada possa ser alcançada
 Enquanto a lâmpada não acender, faça:
 Gire a lâmpada queimada no sentido anti-horário até que se solte
 Escolha uma lâmpada da mesma potência da queimada
 Posicione a nova lâmpada no soquete
 Gire a lâmpada no sentido horário até que ela se firme
 Desça da escada
Fim.
Algoritmo para trocar uma lâmpada no teto
ALGORITMO
Início
Acionar o interruptor
Se a lâmpada não acender, então:
 Posicione a escada debaixo da lâmpada queimada
 Suba na escada até que a lâmpada possa ser alcançada
 Enquanto a lâmpada não acender, faça:
 Gire a lâmpada queimada no sentido anti-horário até que se solte
 Escolha uma lâmpada da mesma potência da queimada
 Posicione a nova lâmpada no soquete
 Gire a lâmpada no sentido horário até que ela se firme
 Desça da escada
Fim.
Algoritmo para trocar uma lâmpada no teto
Repetição: mesmo trecho é repetido 
várias vezes, até que a condição de 
parada seja alcançada. 
Qual a condição de parada? 
O número de repetições é indefinido, 
porém, finito.
ALGORITMO
Até quando devemos refinar o algoritmo?
- Até que as instruções cheguem o mais próximo 
possível das instruções de uma linguagem de 
programação.
- O algoritmo deve ser independente de linguagem 
de programação.
- As linguagens de programação, assim como os 
computadores, têm um conjunto restrito de 
instruções.
- Muitas dessas instruções são comuns: testes 
seletivos, repetições, entrada e saída, etc.
EXERCÍCIO
Fazer um algoritmo para assistir ao filme 
“Coringa” no cinema.
Início
 Ir ao cinema;
 Comprar uma entrada;
 Ver o filme;
 Voltar para casa;
Fim.
e se não tiver passando?
e se tiver fila?
e se não houver lugar?
ALGORITMOS E PROGRAMAÇÃO 
DE COMPUTADORES I
Noção de Algoritmos
Quis - Semana 1 
Pergunta 1 
 
 
 
Você tem que fazer um algoritmo sobre como fazer café usando água, café em pó, uma 
garrafa térmica e um coador de café. Veja a solução apresentada por um colega em português 
coloquial. Escolha a alternativa correta que descreva as características deste algoritmo. 
Início do algoritmo 
Coloque o café 
Coloque a água 
 
 
Resposta 
Selecionada: 
a. 
O algoritmo está incompleto. Ele precisa ter a declaração de 
fim do algoritmo e ser refinado. Os dois passos indicados ainda são 
muito genéricos. 
Respostas: a. 
O algoritmo está incompleto. Ele precisa ter a declaração de 
fim do algoritmo e ser refinado. Os dois passos indicados ainda são 
muito genéricos. 
 
b. 
O algoritmo está correto. Ele contém todos os passos para 
se fazer um café. 
 
c. 
O algoritmo está correto. Ele contém todos os passos na 
ordem correta para se fazer um café. 
 
d. 
O algoritmo está correto. Ele contém as declarações de 
início do algoritmo e tem os dois passos concretos para se fazer um 
café. 
 
e. 
O algoritmo está incorreto. Não precisa ter a indicação de 
iníciodo algoritmo. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
ALGORITMOS E PROGRAMAÇÃO 
DE COMPUTADORES I
Fluxogramas
ALGORITMOS
Na aula passada aprendemos o conceito
de algoritmos.
Sequência de passos ou instruções bem
definidos que visam atingir um objetivo.
Estruturas sequenciais, condicionais e 
de repetição.
FLUXOGRAMA
Representação esquemática de um 
algoritmo, feito através de gráficos que 
ilustram a transição de informações entre 
os elementos que o compõem.
Representa a lógica interna dos 
programas.
SIMBOLOGIA
Início ou fim do fluxograma
Entrada ou saída de dados
Instrução
Ponto de decisão
Fluxo de dados e conexão
ALGORITMO
Início
Acionar o interruptor
Se a lâmpada não acender, então:
Posicione a escada debaixo da lâmpada queimada
Suba na escada até que a lâmpada possa ser alcançada
Enquanto a lâmpada não acender, faça:
Gire a lâmpada queimada no sentido anti-horário até que se solte
Escolha uma lâmpada da mesma potência da queimada
Posicione a nova lâmpada no soquete
Gire a lâmpada no sentido horário até que ela se firme
Desça da escada
Fim.
Algoritmo para trocar uma lâmpada no teto
FLUXOGRAMA
Início
Leia N1
Leia N2
Leia N3
M ß (N1 + N2 + N3) / 3
Escreva (‘A média é: ‘, M)
Fim.
Algoritmo para calcular a média de notas
FLUXOGRAMA
Início
Leia N1
Leia N2
Leia N3
M ß (N1 + N2 + N3) / 3
Se M > 5.0 então:
Escreva (‘O aluno passou!’)
Senão:
Escreva (‘O aluno não passou!’)
Fim.
Algoritmo para calcular a média de notas
EXERCÍCIO
Modifique o exemplo anterior para 
calcular a média de notas para 100 
alunos. 
Desenvolva o algoritmo e o fluxograma.
ALGORITMOS E PROGRAMAÇÃO 
DE COMPUTADORES I
Fluxogramas
Quis 2 
 
Considere o fluxograma abaixo e assinale a alternativa correta: 
 
Resposta 
Selecionada: 
e. 
O fluxograma apresenta entrada e saída de dados, uma 
instrução matemática, dois pontos de decisão e um fluxo de 
controle de repetição. 
Respostas: a. 
O fluxograma apresenta entrada e saída de dados, um 
ponto de decisão e um fluxo de controle de repetição. 
 
b. 
O fluxograma apresenta uma instrução matemática, um 
ponto de decisão e um fluxo de controle de repetição. 
 
c. 
O fluxograma apresenta entrada de dados, uma 
instrução matemática, um ponto de decisão e duas saídas de 
dados. 
 
d. 
O fluxograma apresenta saída de dados, uma instrução 
matemática, um ponto de decisão e um fluxo de controle de 
repetição. 
 
e. 
O fluxograma apresenta entrada e saída de dados, uma 
instrução matemática, dois pontos de decisão e um fluxo de 
controle de repetição. 
 
 
 
 
 
ALGORITMOS E 
PROGRAMAÇÃO DE 
COMPUTADORES I
Sobre Python
PYTHON
Desenvolvida no final da década de 80 por 
Guido van Rossum (CWI – Holanda) 
De propósito geral, projetada para 
desenvolver programas de alta legibilidade
Possui uma vasta biblioteca para diferentes 
aplicações
Grande popularidade nos últimos anos
Versão atual: 3.8.3 (desejável: > 3.5)
PYTHON
Em nossa disciplina, poderemos aprender 
Python:
- Usando uma interface online, que não 
precisa instalar nenhum software no 
computador
ou 
- Instalando o interpretador Python no 
computador e uma IDE
INTERFACE ONLINE
Jupyter Notebook:
https://jupyter.org/
https://jupyter.org/
INSTALAÇÃO
Para configurar o Python no computador, é necessário 
fazer o download e instalar o kit de desenvolvimento 
em Python - https://www.python.org/downloads/
Instalar a versão de acordo com Sistema 
Operacional:
- Windows
- Linux
- Mac OSX
https://www.python.org/downloads/
TESTANDO
O kit já vem com o interpretador IDLE
Para executá-lo, basta selecioná-lo no menu
Fonte: https://www.youtube.com/watch?time_continue=92&v=3Xy221yv9A8&feature=emb_logo
https://www.youtube.com/watch?time_continue=92&v=3Xy221yv9A8&feature=emb_logo
TESTANDO
Interpretador IDLE
Fonte: https://www.youtube.com/watch?time_continue=92&v=3Xy221yv9A8&feature=emb_logo
https://www.youtube.com/watch?time_continue=92&v=3Xy221yv9A8&feature=emb_logo
TESTANDO
Abrindo uma nova janela 
Fonte: https://www.youtube.com/watch?time_continue=92&v=3Xy221yv9A8&feature=emb_logo
https://www.youtube.com/watch?time_continue=92&v=3Xy221yv9A8&feature=emb_logo
TESTANDO
Executando o arquivo
Fonte: https://www.youtube.com/watch?time_continue=92&v=3Xy221yv9A8&feature=emb_logo
https://www.youtube.com/watch?time_continue=92&v=3Xy221yv9A8&feature=emb_logo
IDE
Integrated Development Environment
Aplicativo que fornece funcionalidades 
interessantes para o programador de 
software
Geralmente consiste de um editor de texto, 
compilador e debugador de Código
Para Python, existem várias IDEs 
disponíveis: 
https://wiki.python.org/moin/IntegratedDevelop
mentEnvironments 
https://wiki.python.org/moin/IntegratedDevelopmentEnvironments
https://wiki.python.org/moin/IntegratedDevelopmentEnvironments
PyCharm
Iremos utilizar o PyCharm:
https://www.jetbrains.com/pycharm/
Instalação do plugin “PyCharm cell mode”
Configuração de teclas de atalho
https://www.jetbrains.com/pycharm/
ALGORITMOS E 
PROGRAMAÇÃO DE 
COMPUTADORES I
Sobre Python
Quis 3 
 
 
Assinale a alternativa que contém a(s) abordagem(ns) que possibilita(m) a construção 
de um programa em Python. 
 
Resposta 
Selecionada: 
c. 
Pode-se utilizar uma interface on-line, que não necessita da 
instalação de nenhum software no computador, ou instalar o 
interpretador Python no computador, preferencialmente com uma 
IDE. 
Respostas: a. 
A utilização da interface IDLE, que vem junto à instalação do 
Python, é obrigatória. 
 
b. 
A única alternativa possível é instalar o interpretador Python 
no computador, preferencialmente com uma IDE. 
 
c. 
Pode-se utilizar uma interface on-line, que não necessita da 
instalação de nenhum software no computador, ou instalar o 
interpretador Python no computador, preferencialmente com uma 
IDE. 
 
d. 
A única IDE disponível, além da IDLE que vem junto à 
instalação do Python, é a PyCharm. 
 
e. 
A única alternativa possível é utilizar uma interface on-line, 
que não necessita da instalação de nenhum software no 
computador. 
 
 
 
Atividade Avaliativa Semana 1 
 
Pergunta 1 
1. Veja o seguinte algoritmo: 
1. Início 
2. Leia Produto um item de produto que o usuário quer consultar 
3. Leia Preço do produto 
3. Leia meta o preço que o usuário quer gastar como máximo 
6. Se o Preço for menor que a meta mostre o produto 
7. Senão escreva “não entrou em promoção” 
8. Fim 
 
Indique como, no algoritmo, são denominados os seguintes nomes: meta, Produto e Preço:  
a. Pseudocódigo. 
b. Tipo de dados. 
c. Tipo de valores.  
d. Constantes. 
e. Variáveis. 
 
Pergunta 2 
1. A maioria das linguagens de programação, incluindo o Python, têm um ou mais ambientes integrados 
de desenvolvimento, a fim de garantir maior produtividade ao desenvolvimento de software com o uso 
da linguagem. 
 
Com base no apresentado, avalie as asserções a seguir e a relação proposta entre elas. 
 
I. A linguagem Python tem mais de um ambiente integrado de desenvolvimento, que pode ser escolhido 
pelo desenvolvedor considerando suas preferências e o sistema operacional que utiliza. 
PORQUE 
II. O ambiente de desenvolvimento integrado IDE tem, geralmente, um editor de textos para a escrita 
dos códigos, um compilador e uma ferramenta de depuração. 
 
Analisando as asserções anteriores, conclui-se que: 
a. a primeira asserção é falsa, e a segunda é verdadeira. 
b. as duas asserções são verdadeiras, e a segunda não justifica a primeira. 
c. as duas asserções são falsas. 
d. a primeira asserção é verdadeira, e a segunda é falsa. 
e. as duas asserções são verdadeiras, e a segunda justifica a primeira. 
 
Pergunta 3 
1. Os algoritmos têm o objetivo de modelar a solução de um problema por meio de um conjunto de 
instruções. Essa modelagem é independente da linguagem de programação escolhida, podendo ser 
feita por meio de uma notação gráfica. 
 
Com base no apresentado, avalie as asserções a seguir e a relação proposta entreelas. 
 
I. Os fluxogramas, também conhecidos como diagramas de blocos, é uma notação gráfica que 
padroniza as operações e o fluxo de dados dos algoritmos de maneira eficiente. 
PORQUE 
II. Sua utilização possibilita uma compreensão mais acurada da solução apresentada pelo algoritmo, 
pois uma imagem pode ser mais bem visualizada e compreendida do que uma instrução textual. 
 
Analisando as asserções anteriores, conclui-se que: 
a. a primeira asserção é falsa, e a segunda é verdadeira. 
b. as duas asserções são falsas. 
c. as duas asserções são verdadeiras, e a segunda justifica a primeira. 
d. as duas asserções são verdadeiras, e a segunda não justifica a primeira. 
e. a primeira asserção é verdadeira, e a segunda é falsa. 
 
Pergunta 4 
1. O uso de fluxogramas traz uma melhoria substancial na visualização e no entendimento de algoritmos, 
principalmente quando eles apresentam um certo grau de complexidade. Com base nisso, analise o 
fluxograma a seguir. 
 
Com relação ao fluxograma apresentado, avalie as afirmativas a seguir. 
 
I. O algoritmo faz a divisão de dois valores. 
II. A divisão será feita independentemente dos valores lidos para N1 e N2. 
III. Se N2 for igual a zero, uma mensagem será enviada ao usuário. 
IV. O algoritmo prevê um possível erro de divisão por zero. 
 
Está correto o que se afirma em: 
a. II, apenas. 
b. I, III e IV, apenas. 
c. I, II e III, apenas. 
d. I e II, apenas. 
e. I, II, III e IV.

Mais conteúdos dessa disciplina