Post on 14-Jun-2015
Reinventando o Ensino Médio
Tecnologia da Informação
Márcio Bunte de Carvalho Luiz ChaimowiczMirella M. Moro
www.youtube.com/user/KhanAcademyPortugues/videos
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação2
Problema = Objeto Matemátco
P = < D, R, c >
D
Dados
R
Resultados
possíveis
c
Condição
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação3
possíveis
c = Relação binária caracteriza uma solução satisfatória, associando a cada elemento do conjunto
de dados a Solução única desejada.
Problema : Exemplo
• P = problema de diagnóstico médico
• O conjunto de dados disponível d ∈∈∈∈ D, onde dsão os dados do paciente (observação da anamnese,
sintomas, resultados de laboratório, etc) que pertencem que pertencem ao conjunto D de dados possíveis.
• R é o conjunto de doenças possíveis.
• A condição que caracteriza uma solução satisfatória consiste em encontrar o par <d, r>
onde r ∈∈∈∈ R é o diagnóstico desejado.
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação4
Como Definir um Problema? • Enumeração exaustiva: procurar todos os pares <dado,
resultado> – Só se aplica no caso que o conjunto de dados é finito
– Exemplo: agenda de telefones (associa telefone a cada nome)
• Declarativamente: dar propriedades que devem ser satisfeitas pela solução do problema. satisfeitas pela solução do problema. – Exemplo: Dado um número real, associa dois números cuja
soma de seus quadrados é igual ao número real dado
• Por um algoritmo: (sequência de passos a serem realizados por um programa de computador) define correspondência entre dados e resultados sempre que ele pára conseguindo chegar a uma solução. – Exemplo: Formulário de Imposto de Renda
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação5
… Por um algoritmo
• Impossível saber se o programa pára � a solução é não computável.
Programa constante:
Leia xLeia x
Enquanto x ≠ 10 faça
x x + 1
Mostre na tela o valor de x
Fim
• PROBLEMAS?!
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação6
Se o valor lido de x for maior do que 10, o programa não vai parar.
Problemas…
• Problemas são fáceis e difíceis
• Entender o problema é problema
• Nem todo problema tem solução
• Problemas de hoje não têm uma solução simples e única
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação7
Problemas de hoje não tem uma
solução simples e única
Solução de Problemas através da
Computação
Ênfase deve estar no processo e não
na solução
através da Computação
1,2,3
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação8
Solução de Problemas através da
Computação
Ênfase deve estar no
processo e não na solução
Problemas de hoje não tem uma solução
simples e única
Buscar a melhor solução (dentre várias) para problemas de inúmeras áreas
(exatas, sociais, biológicas, etc)
Computação 1,2,3
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação9
Solução de Problemas através da Computação
AMBIENTE
Estudantes confortáveis
com o trabalho em grupo
Múltiplas Alternativas valorizadas e encorajadas
Falhar = parte do processo
para encontrar a Solução
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação10
Solução de Problemas através da Computação
ESTUDANTES IRÃO APRENDER
Aplicar Criar novos
Pensar abstratamente
Aplicar algoritmos conhecidos
onde apropriado
Criar novos algoritmos
para problemas complexos
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação11
Três maneiras de resolver problemas
1. Solução em N Passos
2. Solução em algoritmos
3. Solução em 4 Passos
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação12
1. Solução de Problemas em N passos
• Coleta de Dados
• Análise de Dados
• Representação de Dados
• Decomposição de ProblemaDecomposição de Problema
• Abstração
• Algoritmos & Procedimentos
• Automação
• Otimização através da paralelização
• Simulação
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação13 Fonte: CSTA & ISTE. Computational Thinking across the Curriculum. 2009.
Solução de Problemas em N passos
MATEMÁTICAColeta de Dados Encontrar uma fonte de dados para uma área de problemas, por exemplo,
cara ou coroa e jogo de dados
Análise de Dados Contar ocorrências de cara ou coroa e jogo de dados, e analisar os
resultados
Representação de
Dados
Usar histograma, gráfico de pizza, gráfico de barras para representar dados;
usar conjuntos, listas, grafos, etc para conter dados
Decomposição de
Problema
Aplicar ordem de operações em uma expressão
Problema
Abstração Usar variáveis em Álgebra; identificar fatos essenciais em um problema com
palavras; estudar funções em álgebra comparadas às funções em
programação; usar iteração para resolver problemas de palavras
Algoritmos &
Procedimentos
Fazer divisões ou fatorações longas
Automação Usar ferramentas tais como: Geometer Sketch Pad, Star Logo, Python
Paralelização Resolver sistemas lineares; fazer multiplicação de matrizes
Simulação Plotar uma função no plano cartesiano e modificar valores das variáveis
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação14
Solução de Problemas em N passos
CIÊNCIASColeta de Dados Coletar dados de um experimentoAnálise de Dados Analisar dados de um experimentoRepresentação de
DadosResumir dados de um experimento
Decomposição de
ProblemaFazer a classificação de espécies
Abstração Construir um modelo de uma entidade físicaAlgoritmos &
ProcedimentosFazer um procedimento experimental
Automação Usar ProbewareParalelização Rodar experimentos simultaneamente com
parâmetros diferentes Simulação Simular movimento de um sistema solar
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação15
Solução de Problemas em N passos
ESTUDOS SOCIAISColeta de Dados Estudar estatísticas de dados de batalhas ou
populaçõesAnálise de Dados Identificar tendências em dados a partir das
estatísticasRepresentação de
DadosResumir e representar tendências
Dados
Decomposição de
Problema
Abstração Resumir fatos; deduzir conclusões a partir de fatosAlgoritmos &
Procedimentos
Automação Usar ExcelParalelização
Simulação Jogar Age of Empires; Oregon Trail10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação16
Solução de Problemas em N passos
LETRAS E ARTESColeta de Dados Fazer análise linguística de sentençasAnálise de Dados Identificar padrões para diferentes tipos de
sentençasRepresentação de
DadosRepresentar padrões de diferntes tipos de sentenças
Decomposição de Escrever um sumárioDecomposição de
ProblemaEscrever um sumário
Abstração Usar semelhanças ou metáforas; escrever histórias
com bifurcaçõesAlgoritmos &
ProcedimentosEscrever instruções
Automação Usar um corretor ortográficoParalelização Traduzir parágrafos de texto simultaneamenteSimulação Fazer a encenação de uma história
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação17
2. Solução em Algoritmos
• Quando as ações de um algoritmo obedecem à sintaxe de uma linguagem de programação, passamos a chamá-lo de programa.
• Qualidades de um bom algoritmo– Perfeitamente Definido: descreve exatamente as instruções a
serem executadas e em que seqüência (a falta de alguma informação pode levar a uma interpretação errônea do informação pode levar a uma interpretação errônea do algoritmo)
– Não Ambíguo– Eficaz: consegue resolver o problema em qualquer situação.
Situações de exceção que possam alterar o resultado do algoritmo devem ser descritas e tratadas.
– Eficiente: resolve o problema com o mínimo de recursos. No caso de algoritmos para processamento de dados, os recursos a serem considerados são espaço na memória, tempo de processamento, entre outros.
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação18Fonte: Glauco Amorim. Programação para Iniciantes. 2009.
Algoritmo
• Três maneiras básicas de definir algoritmo
– Descrição narrativa
– Fluxograma
– Pseudo-código (portugol) � conceitos mais avançados que podem ser deixados para estudar avançados que podem ser deixados para estudar quando for aprender uma linguagem de programação
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação19
Algoritmo: Descrição Narrativa
algoritmo lavar_cabelo
1. Molhe o cabelo
2. Coloque o xampu
3. Massageie • não está definido quanto de xampu deve ser colocado;4. Enxágue
5. Repita
• PROBLEMAS?!
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação20
xampu deve ser colocado;• não diz quanto tempo deve massagear;• não diz quando paramos a repetição;• não diz até quando enxaguar.
Algoritmo: Descrição Narrativa
algoritmo lavar_cabelo_versão_melhorada
1. molhe o cabelo
2. repita duas vezes:
2.1. coloque a quantidade correspondente a 2.1. coloque a quantidade correspondente a
uma tampa de xampu no cabelo
2.2. massageie o cabelo até fazer espuma
2.3. enxágue até tirar o xampu
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação21
Algoritmo: Fluxograma
FASES:como
construir
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação22
construirum
algoritmo
• Problema: questão proposta a ser resolvida.• Análise Preliminar: entender o problema
com a maior precisão possível e identificar os dados. Identificar os resultados desejados.
• Solução: desenvolver um algoritmo para resolver o problema.
• Teste de Qualidade: execute o algoritmo desenvolvido com dados para os quais o resultado seja conhecido. O ideal é que o universo dos dados tenha todas as universo dos dados tenha todas as combinações possíveis (a qualidade de um algoritmo pode ser limitada por fatores como o tempo para a sua confecção e recursos disponíveis).
• Alteração: se o resultado do teste não for satisfatório, altere o algoritmo e submeta-o a um novo teste de qualidade.
• Produto Final: algoritmo concluído e testado, pronto para ser aplicado.
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação23
3. Solução de Problemas em 4 Passos
A. Entender o problema [próximos slides]
Ler ou escutar a definição do problema.
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação24
A. Entender o problema
Estratégias• 5 Por quês. Começar com um por quê; após a
resposta, perguntar novamente (5 vezes).– Ajuda a rapidamente determinar a causa principal do
problema– É simples, fácil de aprender e aplicar– É simples, fácil de aprender e aplicar
• Apreciação. Similar à anterior, consiste em perguntar repetidamente “E então?” para se ter uma ideia das causas e efeitos
• Análise da causa principal. Dividido em 4 partes: definir o problema, coletar dados, identificar possíveis fatores que causam o problema (com base nos dados), identificar a(s) causa(s) central
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação25 Fonte: http://www.mindtools.com/pages/article/newTMC_00.htm
Entender o problema: grafo de causa e efeito
• Identifique o problema central
FilialNão Coopera
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação26
Entender o problema: grafo de causa e efeito
• Identifique o problema central
• Identifique os fatores principais
FilialNão Coopera
• Identifique os fatores principais
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação27
FilialNão Coopera
Entender o problema: grafo de causa e efeito
• Identifique possíveis causas
FilialNão Coopera
Razoavelmente
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação28
Não CooperaRazoavelmenteModerno
Email for a do aràs vezes
Entender o problema: grafo de causa e efeito
• Identifique os fatores principais
FilialJoão
Maria
contagioso?
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação29
FilialNão Coopera
João
RazoavelmenteModerno
Email for a do aràs vezes
Entender o problema: Fluxo de Dados
INÍCIO
ResponderTelefonema
Como possoajudá-lo?
Qual é o Pegar nome e
Info sobre produtoou ajuda com compra
Entrega de Produto
CobrançaIndevida
Outro
10.fevereiro.201230
Qual é o problema?
Pegar nome e empresa
Transferir paraVendas (ext 2203)
FIM
Pegar nome e empresa
Transferir paraHelpDesk (ext 2217)
FIM
Produto Indevida
Problema c/Produto?
Solução de Problemas em 4 Passos
A. Entender o problemaLer ou escutar a definição do problema.
B. Fazer um plano para resolver o problema Utilizar figuras, gráficos, grafos, listas, objetos Definir um algoritmo [já visto]Pode-se definir várias alternativas neste passo.Pode-se definir várias alternativas neste passo.Deve-se então avaliá-las e escolher apenas uma.
C. Realizar o planoUma vez que o plano esteja definido e entendido, deve-se segui-lo. Se o plano foi bem feito, esta é a parte fácil.
D. Revisar e refletir sobre a solução adotada Uma vez que o problema esteja resolvido, refletir sobre como o mesmo foi utilizado.
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação31 Fonte: Joanna Goode, Gail Chapman. Exploring Computer Science. 2011.
ATIVIDADES EXEMPLO
SOLUÇÃO EM 4 PARTES
A. Entender o problema
B. Fazer um plano para resolver o problema
C. Realizar o planoC. Realizar o plano
D. Revisar e refletir sobre a solução adotada
10.fevereiro.2012Reinventando o Ensino Médio - Tecnologia da Informação32