instituto federal de educaÇÃo, ciÊncia e …... exercícios –linguagem narrativa
TRANSCRIPT
![Page 1: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/1.jpg)
ALGORITMO:
FASE 1 – PARTE 1
Rhavy Maia Guedes [email protected]
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E
TECNOLOGIA DA PARAÍBA – CAMPUS CAMPINA GRANDE
1
![Page 2: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/2.jpg)
Algoritmo e Programação2
Precisamos saber o que realmente vamos fazer com
algoritmo e programação:
Queremos e precisamos ter controle do computador
para fazer novas coisas nele?
Então precisamos de:
DEDICAÇÃOAlgoritmo e Programação
![Page 3: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/3.jpg)
Algoritmo3
A palavra algoritmo, à primeira vista, parece-nos estranha;
Cotidiano:
Instruções para se utilizar um aparelho eletrodoméstico;
Uma receita para preparo de algum prato;
Guia de preenchimento para declaração do imposto de renda;
A regra para determinação de máximos e mínimos de funções por
derivadas sucessivas;
A maneira como as contas de água, luz e telefone são calculadas
mensalmente; etc.
![Page 4: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/4.jpg)
Algoritmo4
“Um conjunto finito de regras que provê uma seqüência de
operações para resolver um tipo de problema específico”
[KNUTH]
“Seqüência ordenada, e não ambígua, de passos que levam
à solução de um dado problema”
[TREMBLAY]
“Processo de cálculo, ou de resolução de um grupo de
problemas semelhantes, em que se estipulam, com
generalidade e sem restrições, as regras formais para a
obtenção do resultado ou da solução do problema”
[AURÉLIO]
![Page 5: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/5.jpg)
Para quê?5
“A noção de algoritmo é básica para toda a
programação de computadores”.
[KNUTH - Professor da Universidade de Stanford, autor da
coleção “The art of computer programming”]
“O conceito central da programação e da ciência da
computação é o conceito de algoritmo”.
[WIRTH - Professor da Universidade de Zurique, autor de
diversos livros na área e responsável pela criação de
linguagens de programação como ALGOL, PASCAL e
MODULA-2]
![Page 6: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/6.jpg)
Importância6
Seqüência de passos lógicos para que o computador
possa executar uma tarefa qualquer;
O computador não tem vontade própria, faz apenas
o que mandarmos;
Com uma ferramenta algorítmica, podemos conceber
uma solução para um dado problema,
independendo de uma linguagem específica e até
mesmo do próprio computador.
![Page 7: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/7.jpg)
Características7
Todo algoritmo deve apresentar algumas
características básicas:
ter fim;
não dar margem à dupla interpretação (não ambíguo);
capacidade de receber dado(s) de entrada do mundo
exterior;
poder gerar informações de saída para o mundo externo
ao do ambiente do algoritmo;
ser efetivo (todas as etapas especificadas no algoritmo
devem ser alcançáveis em um tempo finito).
![Page 8: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/8.jpg)
Formas de Representação
Descrição narrativa Utiliza-se de português para narração
Vantagens
Domínio do português;
Desvantagens
imprecisão;
pouca confiabilidade (a imprecisão acarreta a desconfiança);
extensão (normalmente, escreve-se muito para dizer pouca coisa).
8
![Page 9: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/9.jpg)
Representação Narrativa
Exemplo:
Preparar um bolo◼ Providencie manteiga, ovos, farinha de trigo, etc;
◼ Misture os ingredientes;
◼ Despeje a mistura na fôrma de bolo;
◼ Leve a fôrma ao forno;
◼ Espere 20 minutos;
◼ Retire a fôrma do forno;
◼ Deixe esfriar;
◼ Prove;
◼ Diga que está delicioso para não decepcionar o cozinheiro!
9
• O português é bastante
conhecido por nós;
• Imprecisão;
• Pouca confiabilidade;
• Extensão.
Quem precisa de mais passo?
![Page 10: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/10.jpg)
Exercícios – Linguagem Narrativa
Faça um algoritmo para somar dois números e multiplicar o
resultado pelo primeiro número.
Descreva com detalhes a sequência lógica para trocar um
pneu de um carro.
Faça um algoritmo para trocar uma lâmpada. Descreva com
detalhes.
Faça um algoritmo que detalhe a realização de uma chamada
telefônica.
Calcular a média final dos alunos da 3ª Série. Os alunos
realizarão quatro provas: P1, P2, P3 e P4.
10
![Page 11: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/11.jpg)
Formas de Representação
Fluxograma Utiliza-se de símbolos gráficos padronizados para representar algoritmos.
Início, entrada de dados, cálculos, saída de dados, fim
Vantagens
Uma das ferramentas mais conhecidas;
Figuras dizem muito mais que palavras;
Padrão mundial
Desvantagens
Pouca atenção aos dados, não oferecendo recursos para descrevê-los ou
representá-los;
Complica-se à medida que o algoritmo cresce.
11
![Page 12: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/12.jpg)
Fluxograma
Exemplo:
12
• Pouca atenção as variáveis;
• Extenso.
• A solução do problema é clara.
![Page 13: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/13.jpg)
Exercícios – Fluxograma
Calcular a média final dos alunos da 3ª Série. Os
alunos realizarão quatro provas: P1, P2, P3 e P4.
Calcular o valor total em Reais de celulares de uma
loja. Considere que o valor total é igual a
quantidade de celulares vezes o valor unitário por
aparelho.
13
![Page 14: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/14.jpg)
Mini-teste
De acordo com seu entendimento o que é
algoritmo e quais são as características
mais importantes?
Descreva com suas palavras como é
realizado o cálculo do valor a pagar de
uma conta de água.
14
![Page 15: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/15.jpg)
Formas de Representação
Linguagem Algorítmica Consiste na definição de uma pseudolinguagem
estruturada de programação, cujos comandos são em
português ou inglês, para representar algoritmos.
15
Pseudolinguagem ou
Pseudocódigo.
![Page 16: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/16.jpg)
Linguagem Algorítmica
Exemplo:
16
• Exige a definição de uma
linguagem não real para trabalho;
• Não padronizado.
• Padrão universal pré-definido que pode ser
escrito em inglês ou português;
• Pode definir quais e como os dados serão
estruturados;
• Passagem quase imediata do algoritmo
para uma linguagem de programação
qualquer.
// Calcular a idade através das variáveis: ano de nascimento e ano corrente.
algoritmo calcula_idade
var
ano_nascimento, ano_corrente, idade : inteiro
inicio
escreva ("Entre com o ano de nascimento e o corrente:")
leia (ano_nascimento, ano_corrente)
idade := ano_corrente - ano_nascimento
escreva (“Sua idade atual é: ", idade)
fim
![Page 17: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/17.jpg)
Programa
Entrada de dados;
Processamento;
Saída.
17
Entrada SaídaPrograma
Estado
![Page 18: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/18.jpg)
Arquitetura de um computador
Arquitetura fundamental de um computador:
18
![Page 19: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/19.jpg)
Operações básicas do Computador
Computador pode executar quatro operações
básicas:
Operações de Entrada e Saída;
Operações Aritméticas;
◼Adição, subtração, multiplicação e divisão.
Operações Lógicas
◼ Têm aplicabilidade em comparações, testes de condições
lógicas como: 6>4 ou 5<10 ou Valor1 = Valor2.
Movimentação dos dados entre os componentes.
19
![Page 20: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/20.jpg)
Programar – O que é?
Programar consiste em dividir qualquer
problema em muitos pequenos passos, usando
uma ou mais das quatro operações básicas
citadas.
20
![Page 21: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/21.jpg)
Exercícios – Pseudolinguagem ou
Pseudocódigo
1. Faça um algoritmo para somar dois números e multiplicar o
resultado pelo primeiro número.
2. Crie um algoritmo que receba quantidade de uma peça
numa oficina e exiba a quantidade.
3. Adicione à questão anterior a leitura e exibição do código
da peça.
4. Crie um algoritmo para calcular a média final dos alunos da
3ª Série. Os alunos realizarão quatro provas: P1, P2, P3 e
P4.
5. Crie um algoritmo para calcular o valor total em Reais de um
determinado tipo de celular de uma loja. Considere que o
valor total é igual a quantidade de celulares x valor
unitário por aparelho.
21
![Page 22: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/22.jpg)
Exercícios – Pseudolinguagem ou
Pseudocódigo
Faça um algoritmo para “Calcular o estoque médio de uma
peça”, sendo que EstoqueMédio = (QuantidadeMínima +
QuantidadeMáxima) / 2
22
![Page 23: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/23.jpg)
Comandos
Programar consiste na divisão de um problema qualquer em
um conjunto de passos;
Comandos são os passos que compõe um algoritmo;
Podem estar próximos da máquina ou próximos da linguagem
do homem.
23
Alto nível
Baixo nível
![Page 24: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/24.jpg)
Novamente Características...
Os passos que compõem o algoritmo devem ser simples, claros e sem
ambigüidade;
Os passos devem estar numa ordem (numa seqüência) cuidadosamente
definida;
O algoritmo deve ser efetivo, isto é, deve resolver o problema num número
finito de passos;
O algoritmo deve tratar todas situações não previstas (eventos
extraordinários)
Exemplo: O algoritmo para trocar uma lâmpada
24
![Page 25: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/25.jpg)
Resolução
Problema: Trocar a lâmpada.
Resolução:
Remova a lâmpada queimada;
Coloque a lâmpada nova.
Nesta primeira versão, usamos o conceito de seqüenciação. Todo algoritmo
é uma seqüência de passos;
Os comandos do algoritmo fazem parte de uma seqüência, onde é
relevante a ordem na qual se encontram os mesmos;
Cada um dos comandos será executado um de cada vez, estritamente, de
acordo com essa ordem definida.
25
![Page 26: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/26.jpg)
Análise
O que vocês acharam deste algoritmo?
Verifique se ele atende a todas as características discutidas há
pouco. Prevê todos os problemas durante a troca da
lâmpada?
Vamos voltar as características e verificar.
Não! Este algoritmo, apesar de parecer claro, na verdade,
está muito genérico.
Vamos melhorá-lo.
26
![Page 27: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/27.jpg)
Refinamento
Podemos tornar os passos da resolução do problema
mais detalhados para torná-los mais claros e
precisos;
A este desdobramento dar-se o nome de
Refinamento Sucessivo:
Programadores tendem a escrever primeiro os passos
gerais e, só depois, aplicar um desdobramento dos passos
até que se atinja o resultado desejado.
Comandos e Estruturas de controles são usados para
provê refinamento.
27
![Page 28: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/28.jpg)
Cuidado!
Você deve estar se perguntando: Como saber se o
algoritmo está detalhado o suficiente?
A resposta é: depende de quem vai executá-lo.
Não devemos definir os passos de forma muito
genérica (ou abstrata), nem tampouco detalhar
demasiadamente os passos a ponto de tornar o
algoritmo óbvio e grande demais.
28
![Page 29: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/29.jpg)
Estruturas de controle (construção)
Seqüencial:
a mais simples estrutura de controle. Os comandos devem ser
executados um após o outro, na mesma ordem em que aparecem
escritos;
Decisão ou seleção:
também conhecida por Seleção, pode provocar ou não a realização
de uma ação;
Repetição ou iteração:
os comandos e as estruturas de controle abrangidos devem ser
executados repetidamente até que se verifique uma condição para
que se interrompa a repetição.
29
![Page 30: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/30.jpg)
Questões
Lógica:
Um frasco contém um casal de melgas. As melgas reproduzem-se e o
seu número dobra todos os dias. Em 50 dias o frasco está cheio. Em
que dia o frasco esteve meio cheio ?
Três gatos comem três ratos em três minutos. Cem gatos comem cem
ratos em quantos minutos?
30
![Page 31: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/31.jpg)
Dúvidas31
Perguntas?
![Page 32: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E …... Exercícios –Linguagem Narrativa](https://reader034.vdocuments.site/reader034/viewer/2022052517/5c4591ff93f3c34c643f3dde/html5/thumbnails/32.jpg)
Exercícios32
Apostila: Algoritmo e Pascal – P1.01 até P1.15
A pergunta P1.15 será discutida em sala de aula.