Buscar

BC_Aula5

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 36 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 36 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 36 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto


Bases Computacionais da Ciência (BC-0005)
Lógica de Programação: Estruturas 
Sequenciais
David Correa Martins Jr
david.martins@ufabc.edu.br
Centro de Matemática, Computação e Cognição (CMCC)
Universidade Federal do ABC (UFABC)
Introdução
 Programa é uma sequência de ordens (comandos, 
instruções) dadas a um computador que, a partir de 
dados inseridos, obtêm um resultado que será 
disponibilizado por algum dispositivo de saída
Entrada 
de Dados
Processamento 
dos comandos de 
um programa
Saída de 
Dados
2+5 10
Introdução
 Uma instrução é a informação que indica a um computador 
uma ação elementar
 Para a construção de um programa é necessário um conjunto 
de instruções colocadas em ordem sequencial lógica: 
Algoritmo
 Algoritmo: Sequência lógica de passos executados até atingir 
um objetivo ou solução de um problema
 Exemplos de situações onde uma sequência lógica de passos 
é necessária:
 Fazer um bolo
 Construir um robô para explorar um local desconhecido
 Trocar uma lâmpada
Objetivos
 Objetivo da aula:
 Como atribuir instruções a um computador, de maneira 
que ele possa nos auxiliar a resolver problemas
 Para isto precisamos de dois ingredientes:
 Linguagem
 Lógica
 Utilização do RoboMind
O conceito de Instrução
 As instruções diferem de acordo com as funcionalidades que 
o equipamento é capaz de oferecer:
Uma única função: a de ser 
tocada
Operações aritméticas de SOMA, 
SUBTRAÇÃO, MULTIPLICAÇÃO e 
DIVISÃO
Avançar/Retroceder o canal, 
aumentar/diminuir o volume e 
liga/desliga
Campainha
Calculadora 
Simples
Aparelho de 
Televisão
Linguagens de programação
Python
Linguagens de programação
RoboMind
RoboMind
 Integrated Development 
Environment (IDE) que 
oferece uma linguagem de 
programação simples:
 Movimentação de um robô 
em um mundo 
bidimensional (2D)
 Familiarizar os alunos com a 
Lógica de Programação 
criando os seus próprios 
robôs
 http://www.robomind.net
RoboMind
O objetivo do RoboMind é criar um programa para 
que o robô virtual execute alguma tarefa.
 O robô tem algumas instruções básicas como:
Observar o ambiente Mover-se Pegar um objeto Marcar o chão
beacons = balizas
RoboMind
Sequência de Instruções
Sequência de Instruções
 Coordenadas relativas:
 Coordenadas absolutas:
andarFrente(1)
virarEsquerda()
andarFrente(1)
virarEsquerda()
andarFrente(1)
virarEsquerda()
andarFrente(1)
virarEsquerda()
andarNorte(1)
andarOeste(1)
andarSul(1)
andarLeste(1)
(*) Precisa de um ponto de referência
Sequência de Instruções
 Lista de instruções básicas
Atividade em Aula
Exercício 1
Crie um mapa 11 X 7 através de um editor de texto 
(ex: bloco de notas)
Exercício 1
Salve o arquivo com extensão .map dentro da pasta maps do 
Robomind e carregue o arquivo (Arquivo->Abrir mapa)
Exercício 1
Se tudo correr bem, o mapa abaixo será exibido
Exercício 1
No mapa do slide anterior, dê a sequência de comandos para que o robô passe pelos 
pontos abaixo na ordem P0, P1, P2, P3 pintando de preto todo o trajeto
Exercício 1
No mapa do slide anterior, dê a sequência de comandos para que o robô passe pelos 
pontos abaixo na ordem P0, P1, P2, P3 pintando de preto todo o trajeto
pintarPreto()
virarDireita()
andarFrente(3)
virarDireita()
andarFrente(2)
virarEsquerda()
andarFrente(2)
virarEsquerda()
andarFrente(4)
virarEsquerda()
andarFrente(3)
Exercício 2
Crie um programa para pintar um triangulo no mapa 
(default.map)
Exercício 2
Crie um programa para pintar um triangulo no mapa 
(default.map)
pintarBranco
andarFrente(1)
virarDireita
andarFrente(1)
virarEsquerda
andarFrente(1)
virarDireita
andarFrente(1)
virarEsquerda
andarFrente(1)
virarDireita
andarFrente(1)
virarDireita
andarFrente(3)
virarDireita
andarFrente(3)
virarDireita
Exercício 3
Crie um programa para pintar de preto o objeto marcado 
abaixo. Após pintar, o robô deve voltar a posição inicial 
(default.map)
Exercício 3
Crie um programa para pintar de preto o objeto marcado 
abaixo. Após pintar, o robô deve voltar a posição inicial 
(default.map)
andarFrente(3)
pintarPreto
virarDireita
andarFrente(1)
virarEsquerda
andarFrente(4)
virarEsquerda
andarFrente(1)
virarDireita
andarFrente(1)
virarEsquerda
andarFrente(4)
virarEsquerda
andarFrente(4)
virarEsquerda
andarFrente(1)
virarDireita
andarFrente(1)
virarEsquerda
andarFrente(3)
pararPintar
virarDireita
andarFrente(3)
Exercício 4
Crie um programa para pegar a baliza mais próxima e 
soltá-la no ponto de inicio (default.map)
Exercício 4
Crie um programa para pegar a baliza mais próxima e 
soltá-la no ponto de inicio (default.map)
virarDireita()
andarFrente(3)
virarDireita()
andarFrente(1)
pegar()
virarDireita()
andarFrente(3)
virarDireita()
soltar()
Exercício 5
Crie um programa para pegar a baliza mais distante e 
deixá-la ao lado da outra baliza
Exercício 5
Crie um programa para pegar a baliza mais distante e 
deixá-la ao lado da outra baliza
virarDireita()
andarFrente(3)
virarEsquerda()
andarFrente(6)
virarDireita()
andarFrente(10)
virarEsquerda()
andarFrente(2)
pegar()
andarTrás(1)
virarEsquerda()
andarFrente(10)
virarEsquerda()
andarFrente(7)
soltar()
Exercício 04
Exercício 6
Faça o robô pintar uma linha preta sobre a branca 
(default.map)
Exercício 6
Faça o robô pintar uma linha preta sobre a branca 
(default.map)
virarDireita()
andarFrente(8)
pintarPreto()
andarFrente(1)
virarEsquerda()
andarFrente(1)
virarDireita()
andarFrente(2)
virarEsquerda()
andarFrente(6)
virarEsquerda()
andarFrente(8)
virarDireita()
andarFrente(2)
Exercício 7
Abrir o mapa maze1.map
Crie um programa para que o robô se movimente no labirinto e recolha a 
baliza.
Atividades para Casa
Exercícios Propostos
(1) Escreva um programa para o robô escrever no 
chão a palavra UFABC, sendo a primeira letra em cor 
branca, a segunda letra em cor preta e assim 
intercaladamente.
(2) Carregue o mapa hugemap.map e escreva um 
programa para que o robô desenhe um “alvo”, isto é, 
pinte “círculos” (aqui na verdade quadrados) 
concêntricos em preto e branco alternadamente. Faça 
de tal modo que a “mosca” (centro) seja um ponto 
preto e que haja seis quadrados à sua volta.
Atividades para casa
● Capítulo 6 do livro
– Slides da aula 5 (referentes ao capítulo 6 do livro)
● Tidia, seção Repositório
– Estudar e fazer os exercícios
● Capítulo 7 do livro
– Slides da aula 6 (referentes ao capítulo 7 do livro)
● Tidia, seção Repositório
– Estudar e fazer os exercícios
	Slide 1
	Introdução
	Introdução
	Objetivos
	Delegando Tarefas – O Conceito de Instrução
	Slide 6
	Slide 7
	Slide 8
	RoboMind
	Seqüência de Instruções
	Seqüência de Instruções
	Slide 12
	Seqüência de Instruções
	Seqüência de Instruções
	Slide 15
	Slide 16
	Sequência de Instruções
	Slide 18
	Slide 19
	Slide 20
	Slide 21
	Slide 22
	Slide 23
	Slide 24
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Slide 29
	Slide 30
	Slide 31
	Slide 32
	Slide 33
	Slide 34
	Atividades em Aula – Exercícios Propostos
	Slide 36

Outros materiais