Ensinando a Programação

Documentos relacionados
INTRODUÇÃO A LÓGICA DE PROGRAMAÇÃO

Introdução à Lógica de Programação

Lógica de Programação Lógica, Conceitos; Fluxo de Controle

Algoritmos I Aula 2 Lógica de Programação

Lógica de Programação I

Lógica de Programação

Lógica de Programação

Algoritmo. pegar uma escada; posicionar embaixo da lâmpada; buscar uma lâmpada nova; ligar o interruptor; se a lâmpada não acender, então:

LÓGICA DE PROGRAMAÇÃO. Prof. Welber Ribeiro da Silva

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

INTRODUÇÃO À PROGRAMAÇÃO. Introdução à Algoritmos. Prof. Me. Sérgio Carlos Portari Júnior

Ciência da Computação. Prof. Dr. Leandro Alves Neves Prof. Dr. Adriano Cansian

01/08/2011. Introdução Lógica Sequencia lógica Instruções Algoritmos Programas. Lógica. Lógica na programação. Instrução.

Lógica de Programação. Capítulo 1. Introdução. Lógica de Programação. Forbellone / Eberspacher. Introdução

ALGORITMOS AULA 1. Profª Amanda Gondim

Algoritmos I Aula 3 Resolução de Problemas (Fluxogramas)

Algoritmos e Técnicas. Lógica de Programação. É a técnica de encadear pensamento para atingir determinado objetivo.

Disciplina de Algoritmos e Programação

Algoritmos e Programação de Computadores Disciplina:

Introdução ao Conceito de Algoritmo e Programação Estruturada

Prof. Paulo Villa Aula 1

Aula Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios. Algoritmo e Programação. Prof.

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE I. Prof. Dr. Daniel Caetano

Universidade Federal de Goiás Instituto de Informática

Algoritmos e Programação

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3

Introdução a Algoritmos

Fundamentos de Lógica e Algoritmos. Aula 2.3 Introdução a Algoritmos. Prof. Dr. Bruno Moreno

Desenvolvimento de Algoritmos. RAD 2119 Tecnologia de Informação Aplicada a Administração. Essa aula. Lógica e Pensamento Lógico. Lógica.

CONCEITO DE ALGORITMO

Lógica de Programação FORBELLONE, André Luis e EBERSPACHER, Henri (PLT)

Algoritmos e Programação

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho

#Conceituação. Algoritmos. Eliezio Soares

Computação I: Representações de Algoritmos

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE I. Prof. Dr. Daniel Caetano

Aula I Introdução à Lógica de Programação

INTRODUÇÃO A ALGORITMOS

CONCEITO DE COMPUTADOR. O que é um computador?

Introdução à Algoritmia

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À PROGRAMAÇÃO DE COMPUTADORES

Seguindo Instruções. Linguagens de Programação Algoritmos. Introdução à Ciência da Computação. Prof. Edison Ishikawa

Algoritmos. Prof. Jonatas Bastos Site:

Algoritmos e Estrutura de Dados I Conceitos de Algoritmos. Prof. Elyssandro Piffer

Introdução à Algoritmos. Professora: Fabíola Gonçalves.

Algoritmo. Conjunto finito de instruções que permitem a realização de uma tarefa. 2.1: Introdução 2. ALGORITMOS

PPM CONTEÚDO. Lógica de programação Programação para manufatura Sistemas supervisorios PROGRAMAÇÃO PARA MANUFATURA 05/03/2009

Introdução à Programação. Ceça Moraes

LÓGICA E LINGUAGEM DE PROGRAMAÇÃO. Introdução

Unidade III LÓGICA. Profª. Adriane Paulieli Colossetti

Programação Básica de Computadores

Algoritmos e Linguagem de Programação I

Aula 02 ALGORITMOS. Introdução à Computação

Algoritmos e Programação

INFORMÁTICA APLICADA AULA 01 ALGORITMOS

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE I. Prof. Dr. Daniel Caetano

Algoritmos Computacionais

Algoritmos. Prof. Jonatas Bastos

UNIDADE 1 CONCEITOS BÁSICOS EM ALGORITMOS

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE I PARA ENGENHARIA. Prof. Dr. Daniel Caetano

BCC 701 Programação de Computadores I

Arquitetura Genérica de um Computador (Máquina de Von Neumann): Diagrama conhecido como Máquina de Von Neumann (grande nome da informática).

Apresentação da Disciplina

Técnicas de Programação

Capítulo 1 - Lógica e Algoritmos

Aula 02. Algoritmos e Pseudocódigo

INTRODUÇÃO A PROGRAMAÇÃO

1 TECNOLOGIA ELEMENTAR CAPÍTULO 1 E-books PCNA. Vol. 1 TECNOLOGIA ELEMENTAR CAPÍTULO 1 INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO C.

Conceitos Básicos. Professor: Juliano Lucas Gonçalves.

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo

É neste ponto que entra o conceito de lógica de programação.

Aula 7 Oficina de Programação Estruturas de Repetição no C. Profa. Elaine Faria UFU

ALGORITMOS ALGORITMOS ALGORITMOS. Natureza dos passos. Apresentação das Estruturas de Algoritmos - Fluxograma

EMENTA. Estudo dos métodos para resolução de problemas e modelagem da solução por meio de algoritmo. Estruturação, depuração, testes e documentação.

Transcrição:

Pensando a Programação Meu primeiro Robô Brincando de Robô Ensinando a Programação Matemática Biologia Física Programação de computadores - Raciocínios apropriados 1

Lógica de Programação? É a técnica de encadear pensamentos para atingir determinado objetivo. Lógica de Programação Essa lógica é uma combinação de elementos simples, que todos usamos no dia a dia mas nem sempre estamos cientes: - executar uma seqüência de ações - tomar decisões diante de alternativas - e controlar ações repetidas. 2

Por quê Lógica de Programação? Construção de algoritmos coerentes e válidos Algoritmo? seqüência de passos que visam atingir um objetivo bem definido Por quê construir Algoritmos? Representar fielmente o raciocínio envolvido na Lógica de Programação Tradução para uma Linguagem de Programação (codificação) 3

Algoritmo: Trocar lâmpada Pegar uma escada; Posicionar a escada embaixo da lâmpada; Buscar uma lâmpada nova; Subir na escada; Retirar a lâmpada velha; Colocar a lâmpada nova. Algoritmo: Trocar lâmpada queimada Pegar uma escada; Posicionar a escada embaixo da lâmpada; Buscar uma lâmpada nova; Acionar o interruptor; Se a lâmpada não acender, então Subir na escada; Retirar a lâmpada queimada; Colocar a lâmpada nova. 4

Algoritmo: Trocar lâmpada queimada Acionar o interruptor Se a lâmpada não acender, então Pegar uma escada; Posicionar a escada embaixo da lâmpada; Buscar uma lâmpada nova; Acionar o interruptor; Subir na escada; Retirar a lâmpada queimada; Colocar a lâmpada nova. Meu primeiro Robô Ano: 2010 Cenário: sua casa. Você ganhou um magnífico robô tipo humano, modelo sem-sexo. Não é o mais moderno, mas sem dúvida é sensacional. E agora você deve aprender a operá-lo, e para isso dispõe tão-somente do manual de instruções 5

Primeiro teste Ligue a TV Não tem registro?@#% Como você funciona???? Primeiro teste Inicie com a palavra Robô Voce é muito legal Inicie com a palavra Robô Fale(frase, entonação) Fale Você é muito legal, Normal. 6

Fuçando o manual Ligar(Aparelho) Robô, Ligar a TV Robô, Sintonizar TV, 10 Desligar(Aparelho) Sintonizar(Aparelho, Canal) Serviços Domésticos Evoluindo ULP - Unidade Lógica Programável Ensinando o seu Robô 7

Ensinando o seu Robô Lego Caixa do Lego Registrado Ensinando o seu Robô Robô,guarde os Lego na caixa do Lego Não Registrado Registrado??? Robô, Lego pegue Robô, coloque caixa do Lego. 8

Programando repetições REPITA <instrução 1> <instrução 2>... ATÉ QUE <condição> REPITA N VEZES <instrução 1> <instrução 2>... FIM-REPITA Programando repetições ALGORITMO GuardeLego REPITA 100 VEZES <Pegue(Lego)> <Coloque(Caixa do Lego)> FIM-REPITA FIM-ALGORITMO 9

Programando repetições Robô, programar ALGORITMO GuardeLego REPITA 100 VEZES <Pegue(Lego)> <Coloque(Caixa do Lego)> FIM-REPITA FIM-ALGORITMO Registrado Executando o seu Algoritmo Robô, guarde lego Sucesso 100x 10

Programando decisões SE <condição> ENTÃO <instrução 1> <instrução 2>... FIM-SE CONDIÇÃO (Objeto, Estado). resposta do tipo VERDADEIRO ou FALSO. SE Condição(Lâmpada, Acesa) ENTÃO Desligue(Lâmpada). Testando o seu Robô Robô, Condição (TV, Ligada). Não Registrado Registrado??? Robô,Fale (Condição(TV, Ligada)). 11

Executando o seu Algoritmo Instruções: Achou Robô, Fale Procure(Objeto) Robô, se Procure (Achou). achou então fale( Meu (Peçaamado mestre, achei uma peça do lego ). Lego). Verdadeiro Sucesso Meu amado mestre, achei uma peça do lego. 100x Programando o seu Robô Robô, programar ALGORITMO Guarde todos os lego REPITA Procure(Peça do Lego) Pegue(Peça do Lego) Coloque(Caixa do Lego) ATÉ QUE Não Achou FIM-ALGORITMO Registrado 12

Programando decisões ALGORITMO Guarde todos os lego. REPITA Procure(Peça do Lego) SE Achou ENTÃO Pegue(Peça do Lego) Coloque(Caixa do Lego) FIM-SE ATÉ QUE Não Achou. FIM-ALGORITMO Executando o seu Algoritmo Robô, Guarde todos os Lego. Sucesso Verdadeiro 13

Brincando de Robô Vamos explorar um pouco as possibilidades de um robô. Nos exercícios abaixo, considere que o robô entende as seguintes instruções: Ande(X passos) Vire(X graus), onde graus positivos referem-se ao sentido horário. Exercício 2.5: Ande e vire Usando as instruções Ande e Vire, elabore um algoritmo que faça o robô (à esquerda) alcançar o pote do outro lado. A linha tracejada representa a medida da distância, em passos. 14

Solução Algoritmo BuscaOPote_2 Ande(5 passos) Vire(90 graus) Ande(2 passos) Vire(-90 graus) Ande(4 passos) fim Exercício 2.6 Faça um algoritmo semelhante para o roteiro abaixo: 15

Exercício 2.7 Ache o erro O algoritmo abaixo foi feito para o robô achar o pote por um dos caminhos, mas contém erros. Corrija-o: Algoritmo BuscaOPote_com_erro Ande(6 passos) Vire(90 graus) Ande(2 passos) Vire(90 graus) Ande(4 passos) Vire(90 graus) Ande(2 passos) Vire(-90 graus) Ande(3 passos); fim Exercício 2.8 Alternativas Na figura abaixo, há um obstáculo, e não se pode saber se o robô pode passar até que ele chegue ao local. Lá, ele deve verificar se pode passar; se puder, prossegue, senão volta. 16

Exercício 2.8 Atenção Verifique que o algoritmo deve ter os seguintes passos: "Ande até o local do obstáculo "Se puder passar "Ande até o pote "Senão "Volte ao ponto de partida". Lembre-se de que o robô, diante de alternativas, pode tomar decisões, na forma: Se <condição> então Ações Senão Outras ações. O manual, indica que o robô entende uma instrução do tipo verdadeiro ou falso, no formato Possível(Verbo), onde verbo é uma ação. Uma das ações pode ser andar, ou seja, a instrução informa verdadeiro quando o robô pode dar um passo e falso quando não pode. Exercício 2.8 Solução Algoritmo BuscaOPoteComDecisão; Ande(4 passos) Se Possível(Andar) então Ande(4 passos) Senão Vire(180 graus) Ande(4 passos); fim. 17

Exercício 2.9 Alternativas duplas Aplicar o comando de escolha para o percurso abaixo Exercício 2.10 Repetição Vamos ver agora como um comando de repetição pode facilitar o controle das ações do robô. Combinando as instruções Repita..Até-que e uma variante de Possível(), a instrução Impossível(), para o percurso abaixo podemos fazer o seguinte (passando pela esquerda): 18

Exercício 2.10 Solução Algoritmo AndandoComRepetição Repita Ande(1 passo) Até que Impossível(Andar); Vire(90 graus); Repita Ande(1 passo) Até que Impossível(Andar) Vire(-90 graus) Repita Ande(1 passo) Até que Impossível(Andar) Vire(90 graus) Ande(2 passos) Vire(-90 graus) Ande(3 passos) fim Exercício 2.11 A Casa Elabore um algoritmo para que o robô percorra a "casa" da figura abaixo e caminhe até o pote. Faça uma estimativa de passos, digamos, cada centímetro na folha um passo. 19