Vous êtes sur la page 1sur 47

IEC037 IntroduoProgramaodeComputadores Aula02 MtododeResoluode Problemas

Turma:03 Professor:LeandroGalvo Email:galvao@icomp.ufam.edu.br Pgina:ipct03.weebly.com

ProblemaInicial

Qualarespostadafiguraabaixo?

Contedo

1.Introduolgica

2.Introduoaomtodo deresoluode problemas

Lgica

Artedobempensar Vemdogregologos,quesignificalinguagem discursoepensamentoconhecimento Estudaeensinaacolocarordemnopensamento NormalmenteassociadaMatemtica,masuma ferramentadasdemaiscincias

Oqueacontecequandono utilizamosaLgica?

Trabalhosdesordenados Complexidadeemtarefassimples Retrabalho

OndeequandoutilizamosaLgica?

Pensar Falar,argumentar Escrever Procedercorretamente

Comopodemosexercitar?

Exerccios Jogos Programando

Exemplo1

RosamedeAna PaulafilhadeRosa JliafilhadeAna Logo,Jlianetade Rosaesobrinhade Paula.

Rosa

Ana

Paula

Jlia

Exemplo2

Todomamferoanimal. Todocavalomamfero. Logo,todocavaloanimal. Todoquebebeleitemamfero. Sereshumanosbebemleite. Logo,todoserhumanomamfero.


(eanimal,masnoumcavalo)

Exemplo3

QualovalordeXnasequnciaabaixo?
5 7 9 11 13 15 17 X

5 + 2 = 7 7+2=9,etc. Logo,17+2=19. X19.

Exemplo4

Enasequnciaabaixo?
12 13 15 18 22 27 33 12+1=13 13+2=15 15+3=18,etc. Logo,33+7=40. X40. X

Contedo

1.Introduolgica

2.Introduoaomtodo deresoluode problemas

Resoluodeproblemas
Diariamente, deparamonoscomos maisvariadostiposde problemas

Tiposdeproblemas
Heursticos

Algortmicos

Nopodemser resolvidosatravsde umasriediretade aes Exemplos:


Expandirumaempresa Tornarumquadro bonito Convocarjogadoresde futebolparaaseleo

Podemserresolvidos comumasriede aes Exemplos:


Fazerumbolo Pagarcontasvencidas Controlara

temperaturadeum ambientefechado

Algoritmo

Umasequnciafinitaeordenada depassossem ambiguidade quelevaresoluodeumproblema emumtempofinito.


Sequncia Ordem Pensarcom ordem Utilizara lgica

Origemdapalavra:

SobrenomedomatemticopersadosculoIX,Mohamed ben Musa AlKhowarizmi.

Algoritmo

Podehavervriassolues paraummesmoproblema podehavervrios algoritmos

Todosdevemchegarao resultado(objetivo)desejado deformacorreta; Unsalgoritmospodemser maisrpidoseoutrosmais seguros;

Objetivo

ResoluodeProblemasAlgortmicos
Incio
1 2 3

Identificaroproblema Definirasentradaseas sadas Decompor Projetaroalgoritmo Converteroalgoritmoem linguagemdeprogramao Testarsoluo Fim Refinar passoapasso

ResoluodeProblemasAlgortmicos 1 Identificaroproblema

Emsaladeaula:enunciados Foradesala:necessrioidentificar

ResoluodeProblemasAlgortmicos 2 DefinirEntradaseSadas

Entradas:Todososrecursoseinformaesqueo sistemaprecisaparachegaraoseuobjetivo. Sada:oresultadoesperadopelosistema. Processamento:tratamentodadoentradavisando chegaraoobjetivofinal(sada).

Entradas

Sadas

ResoluodeProblemasAlgortmicos 3 Projetaroalgoritmo

Vocjresolveuumproblemasimilar?
Analogia enunciadodiferente,masestruturadesoluo semelhante. Generalizao soluoparticularconhecida,mas desejaseumasoluogeral. Especializao conheceseasoluogeral,queservede baseparaumaparticular. Decomposio seoproblemacomplicado,podeser quebradoempartesmenores. Reduo Seumproblemadifcil,tenteresolverummais simples.

ResoluodeProblemasAlgortmicos 4 Converteroalgoritmoemdeclaraes

Vocabulrio humano

Vocabulrio damquina

ResoluodeProblemasAlgortmicos 5 Testaroprogramaresultante

Testeoalgoritmocomdiversosdadosdeentradae verifiqueosresultados. Sem resultados? H resultados? Resultados incorretos?


verifiqueproblemadesintaxe
Conjuntode regrasque determinam aordemeas relaesdas palavrasna frase

verifiqueseestocorretos

verifiqueascondies, operaesouordemdospassos

Problema1

Fazerumrobchegaraoladrilhomarcadocomum ponto,contornandoosobstculos.

Processoderesoluodeproblemas algortmicos
Incio
1 2 3

Identificaroproblema Definirasentradaseas sadas Decompor Projetaroalgoritmo Converteroalgoritmoem linguagemdeprogramao Testarsoluo Fim Refinar passoapasso

Problema1
1
Identificaroproblema

Robdeveserguiadoaumladrilhoindicado. Robnopodeocuparomesmoladrilhoque contmumacaixa. Robnopodeatravessarasparedesdomapa. Quaisosmovimentosqueorobpodefazer?

Problema1
2
Definirentradasesadas

Entradas

Sadas

mapa ladrilhoinicial dorob

robsobreo ladrilhocomponto

Problema1
3
Projetaroalgoritmo

1. 2. 3. 4. 5.

Frente Direita Frente Frente Esquerda

Problema1
4
Converteroalgoritmoemdeclaraesdalinguagemde programao

Maistardenestecurso

Problema1
5
Testaroprogramaresultante

1. 2. 3. 4. 5.

Frente Direita Frente Frente Esquerda

Problema2

Umpastordizparaoutro:Dmeumdeseuscarneirosque ficamoscomigualnmerodecarneiros. Ooutroresponde:Nadadisso,dmeumdeseuscarneiros queficareicomodobrodosseus. Quantoscarneirostmcadaum?

Processoderesoluodeproblemas algortmicos
Incio
1 2 3

Identificaroproblema Definirasentradaseas sadas Decompor Projetaroalgoritmo Converteroalgoritmoem linguagemdeprogramao Testarsoluo Fim Refinar passoapasso

Problema2
1
Identificaroproblema

Determinarquantos carneirostemcadaumdos doispastoresXeY

Problema2
2
Definirentradasesadas

Dmeumdeseuscarneirosque ficamoscomigualnmerodecarneiros

Entradas

Sadas

X+1=Y 1 Y+1=2(X 1)
Dmeumdeseuscarneirosque ficareicomodobrodosseus

X Y

Problema2
3
Projetaroalgoritmo

1. IsolaroXnaprimeiraequao 2. SubstituirXnasegundaequao 3. EncontrarovalordeY 4. SubstituirYnaprimeiraequao 5. EncontrarovalordeX 6. ApresentarXeY

X=Y 2 2((Y 2) 1)=Y+1 Y=7 X+1=7 1 X=5 X=5eY=7

Problema2
4
Converteroalgoritmoemdeclaraesdalinguagemde programao

Maistardenestecurso

Problema2
5
Testaroprogramaresultante

X=5eY=7 X+1=Y 1 Y+1=2(X 1) 5 + 1 = 7 1 7+1=2(5 1)

ProblemaInicial

Qualarespostadafiguraabaixo?

Processoderesoluodeproblemas algortmicos
Incio
1 2 3

Identificaroproblema Definirasentradaseas sadas Decompor Projetaroalgoritmo Converteroalgoritmoem linguagemdeprogramao Testarsoluo Fim Refinar passoapasso

ProblemaInicial
1
Identificaroproblema

Quantosequaisanimaisse equilibramcomocarneiro?

ProblemaInicial
2
Definirentradasesadas

Entradas lobo+carneiro+macaco=porco porco=4lobos 2lobos=4macacos

Sadas

carneiro

ProblemaInicial
3
Projetaroalgoritmo

lobo+carneiro+macaco=porco porco=4lobos 2lobos=4macacos IsolarlobosemEquao3 SubstituirlobosemEquao2 SubstituirloboeporconaEquao1 Guardaroresultadoemcarneiro Apresentarcarneiro

(Equao1) (Equao2) (Equao3) lobo=2macacos porco=8macacos carneiro=5macacos

ProblemaInicial
4
Converteroalgoritmoemdeclaraesdalinguagemde programao

Maistardenestecurso

ProblemaInicial
5
Testaroprogramaresultante

5macacos,ou 2lobose1macaco,ou 1loboe3macacos.

Parapraticar

LightBot |armorgames.com/play/6061/lightbot20

Parapraticar

Robozzle |www.robozzle.com

Refernciasbibliogrficas

Menezes,NiloNeyCoutinho(2010).Introduo ProgramaocomPython.EditoraNovatec. Farrer,Harry(2011).AlgoritmosEstruturados,3 edio.EditoraLTC. Forbellone,A.L.V.;Eberspcher,H.F.(2006)Lgica deProgramao,3edio.Pearson. HETLAND,MagnusLie(2008).Beginning Python: From Novice to Professional.SpringereBooks,2 edio.Disponvelem: http://dx.doi.org/10.1007/9781430206347.

Dvidas?