ALGORITMOS
PARA AMBIENTES EDUCACIONAIS – AULA 21/11/09
Horácio ribeiro
OBJETIVOS: FAZER A ANÁLISE DA SOLUÇÃO DE FORMA ESTRUTURADA.
Horácio ribeiro
ALGORITMOS PARA AMBIENTES EDUCACIONAIS
|Conceito
de algoritmo
“ Conjunto finitos de passos, em que cada passo é finito para resolver um objetivo bem determinado.”
y Objetivo
claro e bem determinado y numero finito de passos y todos os passos são finitos e podem ser concluídos y (leitura sobre objetivos)
IST-Rio pós graduação - prof. horácio ribeiro
|Observações
3
ALGORITMOS PARA AMBIENTES EDUCACIONAIS
Existe mais de um algoritmos para se atingir um objetivo | Um algoritmo pode ser mais “eficiente” que outro. | Não existe processo automático para se desenvolver um algoritmo |
IST-Rio pós graduação - prof. horácio ribeiro
4
ALGORITMOS PARA AMBIENTES EDUCACIONAIS |Classificação GERAIS
de algoritmos
MATEMATICOS
COMPUTACIONAIS
IST-Rio pós graduação - prof. horácio ribeiro
GERAIS
5
ALGORITMOS PARA AMBIENTES EDUCACIONAIS
a modelagem matemática permite criar uma função para se atingir um objetivo.
|
uma função pode ser : computável |Não computável |
IST-Rio pós graduação - prof. horácio ribeiro
y
6
ALGORITMOS PARA AMBIENTES EDUCACIONAIS
a maioria das funções são não computáveis.
|
Funções computáveis
IST-Rio pós graduação - prof. horácio ribeiro
Funções não computáveis
7
ALGORITMOS PARA AMBIENTES EDUCACIONAIS
| Uma
IST-Rio pós graduação - prof. horácio ribeiro
Funções computáveis
função é considerada computável quando se descobre um algoritmo (máquina de turing) que a compute. 8
ALGORITMOS PARA AMBIENTES EDUCACIONAIS |
Solução de um problema
Criação de um modelo Perda na criação do modelo
Perda na representaçã o do modelo
Ferramenta capaz de representar o modelo
IST-Rio pós graduação - prof. horácio ribeiro
Mundo real
9
ALGORITMOS PARA AMBIENTES EDUCACIONAIS |
Solução de um problema
Análise Modelo
Criação de um modelo
conceitual Modelo lógico
Ferramenta capaz de representar o modelo
IST-Rio pós graduação - prof. horácio ribeiro
Mundo real
10
ALGORITMOS PARA AMBIENTES EDUCACIONAIS |
Desenvolvimento de um algoritmo Análise: (Criação de um modelo conceitual) IDENTIFICAR CLARAMENTE OS OBJETIVOS E SEQUENCIAR OS PASSOS y
IST-Rio pós graduação - prof. horácio ribeiro
Modelo lógico: REPRESENTAR O MODELO CONSIDERANDO AS RESTRIÇOES E REGRAS. y
11
EXERCÍCIO EM GRUPO (10 MINUTOS) |
FAZER UM ALGORITMO PARA LER DOIS NÚMEROS, MULTIPLICÁ-LOS E MOSTRAR O RESULTADO.
LER UM NÚMERO, MULTIPLICAR SOMAR IMPRIMIR.
IST-Rio pós graduação - prof. horácio ribeiro
VERBOS QUE PODEM SER USADOS:
APRESENTAR: . ANÁLISE . MODELO LÓGICO 12
ALGORITMOS PARA AMBIENTES EDUCACIONAIS
|
AS FORMAS DE ANÁLISE.
DO GERAL PARA O PARTICULAR | EXEMPLO: y
FAZER UM CONTRA CHEQUE: IDENTIFICAR O EMPREGADO | VERIFICAR HORAS EXTRAS | VERIFICAR DESCONTOS | CALCULAR O LIQUIDO | EMITIR CONTRA-CHEQUE |
IST-Rio pós graduação - prof. horácio ribeiro
y TOP-DOWN
13
ALGORITMOS PARA AMBIENTES EDUCACIONAIS y
FAZER UM CONTRA CHEQUE: |
IDENTIFICAR O EMPREGADO
VERIFICAR HORAS EXTRAS | VERIFICAR DESCONTOS | CALCULAR O LIQUIDO | EMITIR CONTRA-CHEQUE |
IST-Rio pós graduação - prof. horácio ribeiro
VERIFICAR TITULAR y VERIFICAR DEPENDENTES y
14
ALGORITMOS PARA AMBIENTES EDUCACIONAIS y
FAZER UM CONTRA CHEQUE: |
IDENTIFICAR O EMPREGADO
y
VERIFICAR TITULAR •IDENTIFICAR CONTA BANCARIA •IDENTIFICAR DADOS PESSOAIS •IDENTIFICAR CARGO
VERIFICAR DEPENDENTES
IST-Rio pós graduação - prof. horácio ribeiro
y
15
ALGORITMOS PARA AMBIENTES EDUCACIONAIS y
FAZER UM CONTRA CHEQUE: |
IDENTIFICAR O EMPREGADO VERIFICAR TITULAR y VERIFICAR DEPENDENTES y
CALCULAR DESCONTO INSS y CALCULAR DESCONTO ATRASO y CALCULAR DESCONTO IMPOSTO DE RENDA y CALCULAR DESCONTO EMPRÉSTIMOS y
CALCULAR O LIQUIDO | EMITIR CONTRA-CHEQUE
IST-Rio pós graduação - prof. horácio ribeiro
VERIFICAR HORAS EXTRAS | VERIFICAR DESCONTOS |
|
16
ALGORITMOS PARA AMBIENTES EDUCACIONAIS PODE-SE REPRESENTAR GRAFICAMENTE NA FORMA HIERÁRQUICA
IDENTIFICAR O EMPREGADO
EMITIR CONTRACHEQUE
VERIFICAR DESCONTOS
VERIFIC AR HORAS EXTRAS
IST-Rio pós graduação - prof. horácio ribeiro
FAZER UM CONTRA CHEQUE
CALCULAR O LIQUIDO 17
EXERCICIO : 20 MINUTOS |
“ TROCAR UM PNEU QUE FUROU DE UM CARRO DE PASSEIO) QUALQUER, INDEPENDENTE SE A MALA ESTÁ OU NÃO CHEIA, E SE OS PASSAGEIROS SÃO OU NÃO CRIANÇAS” OBS: ESTAMOS AUMENTANDO A COMPLEXIDADE DO PROBLEMA EM RELAÇÃO AO EXERCÍCIO DA PRIMEIRA AULA
IST-Rio pós graduação - prof. horácio ribeiro
FAZER A ANÁLISE DE FORMA ESTRUTURADA, MOSTRANDO A HIERARQUIA DAS TAREFAS PARA:
18
EXERCICIO : 20 MINUTOS |
ANÁLISE DA ATIVIDADE DIFICULDADES ENCONTRADAS y APRESENTAÇÃO DAS SOLUÇÕES. y VERIFICAR SE HÁ CONVERGENCIA NAS SOLUÇÕES y
IST-Rio pós graduação - prof. horácio ribeiro
19
OBJETIVOS: - IDENTIFICAR AS FORMAS DE GUARDA DO CÓDIGO GERADO. - IDENTIFICAR AS INSTRUÇÕES DE UM AGORITMO COMPUTACIONAL (SEGUNDA PARTE)
Horácio ribeiro
ALGORITMOS COMPUTACIONAIS |
As funções são feitas por circuitos eletrônicos e tem os seguintes elementos: y
contador numero1
IST-Rio pós graduação - prof. horácio ribeiro
Variáveis e constantes: dispositivos eletrônicos para guardar um valor, normalmente identificados por um nome: exemplo: salario
numero2 21
ALGORITMOS COMPUTACIONAIS y
atribuição: É o circuito eletronico que coloca um valor em uma variavel Representa-se por = := Æ
contador = 1 ação
1
numero1 := 389 ação
389
numero2 Å 132,45
IST-Rio pós graduação - prof. horácio ribeiro
exemplo:
132,45 22
ALGORITMOS COMPUTACIONAIS y
atribuição: Também armazena resultados de contas....e valores de outras variaveis e constantes.
contador = 1 1 ação numero1 := 389 ação 389 numero4 Å contador + numero1
ação 390 outro = 20 + numero4 + contador ação 411
IST-Rio pós graduação - prof. horácio ribeiro
exemplo:
23
ALGORITMOS COMPUTACIONAIS y
Pode-se usar verbos que mostrem entrada: ler, digitar, imputar , escanear..... Etc. (outros que poderão surgir)
IST-Rio pós graduação - prof. horácio ribeiro
Ler para a memoria: comando para ler o valor de um teclado, disco ou qualquer dispositivo que identifique um dado e o coloca em uma variável (cujo o nome é dado no comando) exemplo: LER NOME ação cria a variável nome aguarda até que alguém entre com o dado. O computador ficará parado até o dado ser fornecido
24
ALGORITMOS COMPUTACIONAIS IMPRIMIR da memoria um periferico: comando para ler o valor de uma variável, e gravá-la em um disco, imprimir ou para qualquer dispositivo capaz de receber um dado. exemplo: Imprimir NOME ação pega o conteúdo da variável nome e o envia para um dispositivo de saída. (atenção não apaga a variável) y
IST-Rio pós graduação - prof. horácio ribeiro
Pode-se usar verbos que mostrem saída: imprimir, mostrar, exibir , plotar..... Etc. (outros que poderão surgir)
25
ALGORITMOS COMPUTACIONAIS y
Comparar duas variáveis ou constantes;
SE
EXPRESSÃO: É AVALIADA PELOS CIRCUITOS DO COMPUTADOR DEVO0LVENDO O VALOR FALSO (0) OU VERDADEIRO (1). É UMA EXPRESSAO LÓGICA MATEMÁTICA. EX: 2 == 3 FALSO NUMERO1 < 3 NUMERO1 > NUMERO 2
IST-Rio pós graduação - prof. horácio ribeiro
(VARIAVEL1 < EXPRESSÃO > VARIAVEL2) OU (VARIAVEL1 < EXPRESSÃO > CONSTANTE) OU (CONSTANTE < EXPRESSÃO > CONSTANTE) { SE VERDADEIRO } SENAO { SE FALSO }
26
ALGORITMOS COMPUTACIONAIS y
EXISTE AINDA O COMANDO GO TO. É UM CIRCUITO QUE SABE MUDAR O FLUXO DE CONTROLE PARA UM ENDEREÇÕ DETERMINADO PELO PROGRAMADOR.
UM PESQUISADOR CHAMADO DJASKTRA LIDEROU UMA CAMPANHA PARA SE PADRONIZAR A ESCRITA DO CÓDIGO E DESTA FORMA FACILITAR O ENTENDIMENTO. Este movimento culminou, em 1970, com a definição de normas para o desenvolvimento de algoritmos (abolindo o comando go to). TEOREMA DE JACOPINI. TODO ALGORITMO PODE SER DESENVOLVIDO POR TRÊS ESTRUTURAS. - SEQUENCIA - IF ( ) THEN ELSE - WHILE ( ) { }
IST-Rio pós graduação - prof. horácio ribeiro
ESTE COMANDO FOI RESPONSÁVEL POR MUITO CÓDIGO NOS ANOS 60. E INTRODUZIU UMA DIFICULDADE MUITO GRANDE DE LEITURA.
27
ALGORITMOS COMPUTACIONAIS WHILE ( EXPRESSAO ) { COMANDOS A SEREM REPETIDOS } É UM COMANDO IMPLEMENTADO POR SOFTWARE . Deve ser usado quando se deseja que um grupo de comando seja executado várias vezes e o comando se repetirá enquanto a condição for verdadeira. Exemplo: aluno = 1; while (aluno<100) { ler nome; imprimir nome; aluno = aluno + 1; } y
IST-Rio pós graduação - prof. horácio ribeiro
28
ALGORITMOS COMPUTACIONAIS Os comandos podem ser representados de forma gráfica: chama-se de fluxograma:
y
Entrada/saida Exemplo: Ler nome Imprimir salário
IST-Rio pós graduação - prof. horácio ribeiro
y
29
ALGORITMOS COMPUTACIONAIS y
Comando if
(expressao)
falso
IST-Rio pós graduação - prof. horácio ribeiro
verdadeiro
30
ALGORITMOS COMPUTACIONAIS y
Comando while
Comandos a serem repertidos
falso
IST-Rio pós graduação - prof. horácio ribeiro
verdadeiro
31
ALGORITMOS COMPUTACIONAIS y y
Exempo: multiplicar dois números: Algoritmo
IST-Rio pós graduação - prof. horácio ribeiro
INICIO /* algoritmo para multiplicar dois números Lidos do teclado */ // autor horacio ribeiro // primeira versão – 21/11/09 // estratégia: ler para num1 e num2, apresentar em num3 LER NUM1; LER NUM2; NUM3 = NUM1 * NUM2; MOSTRAR NUM3; FIM
32
ALGORITMOS COMPUTACIONAIS Exempo: multiplicar dois números SEM USAR A MULIPLICAÇÃO: (LEMBRAR QUE M * N É EQUIVALENTE A SOMAR M n VEZES)
y
IST-Rio pós graduação - prof. horácio ribeiro
EM GRUPO (20 MINUTOS)
33
ALGORITMOS COMPUTACIONAIS APRESENTAR O RESULTADO y ANÁLISE DA ATIVIDADE y DISCUTIR OS RESULTADOS y
IST-Rio pós graduação - prof. horácio ribeiro
34
ORNAIZAÇÃO PARA APROVEITAMENTO DO CÓDIGO – AULA 21/11/09
Horácio ribeiro
36
ORGANIZAÇÃO DO CÓDIGO OS ALGORITMOS DESENVOLVIDOS PODEM/DEVEM SER UTILIZADOS EM OUTROS ALGORITMOS COMO NOVOS COMANDOS. TROCAR PNEU (É UM NOVO COMANDO)
ALGORITMO PARA ´SAIR DE CARRO: INICIO IR ATÉ O CARRO VERIFICAR PNEUS SE (PNEU ESTA FURADO) ENTÃO TROCAR PNEU SENAO ENTRAR E DIRIGIR FIM -
IST-Rio pós graduação - prof. horácio ribeiro
EXEMPLO:
OBS: OS OUTROS VERBOS JÁ SÃO ALGORITMOS DESENVOLVIDOS 36
ORGANIZAÇÃO DO CÓDIGO
EMITIR CONTR ACHEQU E
VERIFICA R DESCONT OS
IDENTIFIC AR O EMPREGA DO
VERIF ICAR HORA S EXTR AS
CALCULAR O LIQUIDO
IST-Rio pós graduação - prof. horácio ribeiro
FAZER UM CONTRA CHEQUE
37
ALGORITMO PARA FAZER UM CONTRA CHEQUE
OBS: OS NOVOS COMANDOS SÃO ALGORITMOS JÁ DEFINIDOS INICIO /* ALGORITMO PARA IDENTIFICAR EMPREGADO – HORACIO RIBEIRO 21/11/09 */ LER A MATRICULA DO EMPREGADO; BUSCAR O NOME NO BANCO DE DADOS...... FIM
IST-Rio pós graduação - prof. horácio ribeiro
INICIO /* ALGORITMO PARA FAZER UM CONTRA CHEQUE - HORACIO RIBEIRO – 21/11/09 */ IDENTIFICAR EMPREGADO; VERIFICAR HORAS EXTRAS; VERIFICAR DESCONTOS; CALCULAR O LIQUIDO; EMITIR CONTRA-CHEQUE; FIM
38
MECANISMOS PARA SE APROVEITARA CÓDIGO *FUNÇÕES:
EXEMPLO: DESEJAMOS O NOME COMO RETORNO. SABEMOS A MATRICULA QUE SERÁ O PARAMETRO; NOME-EMPREGADO IDENTIFICAR-EMPREGADO (MATRICULA)
IST-Rio pós graduação - prof. horácio ribeiro
RETORNO NOME DA FUNÇÃO (PARAMETROS)
39
EXERCICIO
TEMPO 10 MINUTOS CORREÇÃO E ANALISE
IST-Rio pós graduação - prof. horácio ribeiro
TRANSFORMAR O CODIGO DE GERAÇÃO DO PRODUTO DE DOIS NUMEROS M E N DO EXERCICIO ANTERIOR PARA A FORMA DE UMA FUNÇÃO.
40
CÓDIGO PRONTO ALGORITMOS JÁ DESENVOLVIDOS E TESTADOS. | FORNECIDOS JUNTO COM AS LINGUAGENS | FORMAM BIBLIOTECAS. |
IST-Rio pós graduação - prof. horácio ribeiro
TODA LINGUAGEM JÁ VEM COM A BIBLIOTECA. | TAMBÉM SE ACHAM BIBLIOTECAS NA INTERNBET. |
41
FINALIZAÇÃO ENTREGAR OS EXERCICIOS. | LER O ARTIGO DISPONIVEL NO MOODLE. | ENTREGAR UMA RESENHA DE NO MÁXIMO 1 FOLHA SOBRE O TEXTO LIDO |
IST-Rio pós graduação - prof. horácio ribeiro
42