Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

18
BC-0005 Bases Computacionais da Ciência Aula 05 Lógica de Programação: Variáveis e Estruturas Sequenciais Profa. Cristiane Salum 2011

Transcript of Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Page 1: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

BC-0005

Bases Computacionais da Ciência

Aula 05Lógica de Programação:

Variáveis e Estruturas Sequenciais

Profa. Cristiane Salum

2011

Page 2: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Lógica de Programação• Conceitos desta aula:

Um algoritmo é uma sequência de instruções que resolve um dado problema ou que realiza uma tarefa específica.As instruções (e, portanto, o algoritmo como um todo) dependem daquilo que o processador "sabe" executar.Um ambiente de programação é uma ferramenta que possibilita editar, depurar e executar um algoritmo.

• Estruturas SequenciaisUm algoritmo pode ser estruturado como umasequência de comandos específicos de uma dada máquina (processador).

Page 3: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

RobomindFerramenta para ensinar programação

estruturada para crianças e jovens.

Por meio de um pequeno conjunto de comandos, pode-se escrever um programa capaz de resolver problemas simples de um robô num ambiente bidimensional. Por exemplo:

- Procurar um ponto branco;- Encontrar a saída de um labirinto.

Page 4: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

A interface do RoboMind tem três áreas: uma área para escrever programas, uma para representação gráfica do robô em seu ambiente e uma área para mensagens de erro.

Robomind

Ref.: Arvid Halma, University of Amsterdam

Page 5: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Instruções• Se você deseja comandar uma máquina, um computador ou

um robô, é necessário fornecer instruções.

• As instruções são diferentes, dependendo da máquina. Por exemplo:– Um gravador: gravar, ler, pausar etc.– Um navegador de internet: ir para o site, voltar,

imprimir a página etc.

• Pergunta: Quais instruções podem ser aplicadas a um piloto automático?

Ref.: Arvid Halma, University of Amsterdam

Page 6: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Instruções básicas• Cada máquina tem um conjunto de instruções básicas:

comandos que são executados prontamente.

• Nosso robô tem instruções básicas para:

Andar Olhar Pintar Agarrar

Ref.: Arvid Halma, University of Amsterdam

Page 7: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Instruções do RoboMind

• As instruções podem ser dadas:

– pressionando um botão

– usando o mouse

– escrevendo comandos

Ref.: Arvid Halma, University of Amsterdam

Page 8: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Instruções com o Mouse

• Abra o controle remoto do RoboMindExecutar Controle Remoto

• Clique nos botões para mover o robô

• Exercício: faça o robô desenhar um pequeno quadrado.

Ref.: Arvid Halma, University of Amsterdam

Page 9: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Escrevendo Comandos• Você também pode dar instruções por meio de

comandos escritos.• Os movimentos são dados pelos comandos:

– andarFrente(1), andarTrás(1), virarDireita(), virarEsquerda()

1. Escrevacomandos aqui 3. Veja o

resultado

2. Clique emexecutar

Ref.: Arvid Halma

Page 10: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Exemplo: Quadrado

• Escreva os seguintes comandos:

Salvar com o nome «Quadrado1». O programa coloca a extensão « .irobo ».

andarFrente(1)virarDireita()andarFrente(1)virarDireita()andarFrente(1)virarDireita()andarFrente(1)virarDireita()

Ref.: Arvid Halma, University of Amsterdam

Page 11: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Linguagem de Programação do RoboMind

• Como saber quais comandos que você pode utilizar?– Por exemplo: andarFrente(1), virarEsquerda() etc.

• A princípio, é necessário aprender cada um dos comandos. E estes devem ser escritos obedecendo às regras (sintaxe) da linguagem de programação.

• É necessário ler a documentação para aprender uma dada linguagem. Existem várias linguagens de programação.

Ref.: Arvid Halma, University of Amsterdam

Page 12: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Exercício resolvido (pág. 147)

1) Criar um mapa.- Abra um editor de texto (Notepad) e digite:

Page 13: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Exercício resolvido (pág. 147) (Cont.)

- Salvar como “Plano.map”- Iniciar o RoboMind- Arquivo Abrir mapa

Page 14: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Exercício resolvido (pág. 147) (Cont.)

2) Programar o robô para ir até as coordenadas(3, -2), (2, 3) e (-3, 1),

todas relativas ao ponto (ladrilho) em que se encontra parado o robô num dado momento.- Visualização do problema

Page 15: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Exercício resolvido (pág. 147) (Cont.)

- Fazer o mapa:

Po = posição inicial do robôP1, P2 e P3 = pontos a serem percorridos

- Traçar um caminho:

Page 16: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Exercício resolvido (pág. 147) (Cont.)

- Executar o programa:

- Observar o caminho:

Page 17: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Atividade em Sala de Aula: Exercícios Propostos (pág. 150)

Dica: use o controle remoto para aprender todos os comandos de movimento e ações do robô (pegar, soltar, pintar etc.).

Page 18: Aula 5 - Logica de Programacao - Variaveis e Estruturas Sequenciais

Atividade 1 para Casa

- Na ferramenta “Atividades” do Tidia, depositar a resolução de 3 exercícios da Seção 6.5 (Exercícios para Casa) do texto desta aula disponível no “Repositório”.

- Fornecer os códigos dos programas (arquivos “.irobo” ou “.map”) usados na resolução dos seus exercícios.