Você está na página 1de 89
Introdução à Programação Manual do Estudante

Introdução à Programação

Manual do Estudante

UNIVERSIDADE DE PERNAMBUCO – UPE Reitor: Prof. Esp. Carlos Fernando de Araújo Calado Vice-Reitor: Prof.

UNIVERSIDADE DE PERNAMBUCO – UPE

Reitor: Prof. Esp. Carlos Fernando de Araújo Calado Vice-Reitor: Prof. Dr. Rivaldo Mendes de Albuquerque

UPE – CAMPUS GARANHUNS

Diretor: Prof. Dr. Clovis Gomes da Silva Junior Vice-Reitor: Prof. Dr. Fábio Rocha Formiga

CURSO DE LICENCIATURA EM COMPUTAÇÃO

Coordenador: Prof. Ms. Haroldo José Costa do Amaral Vice-Coordenador: Profa. Ms. Cristina Leite de Brito

DISCIPLINA DE ESTÁGIO SUPERVISIONADO IV

Professores Responsáveis pela disciplina:

Prof.Ms. Adauto Trigueiro de Almeida Filho Prof.Ms. Higor Ricardo Monteiro Santos Prof. Dr. Paulo Salgado Gomes de Mattos Neto Profa. Dr. Sônia Regina Fortes da Silva

Equipe Responsável pela Elaboração:

AdeildoFellipe Ferreira Santos CharlesJohny Gomes Leite Cláudio Luis de Melo Filho Elissa Wanessa Oliveira Vanderlei Gabriel de Moura Feitosa Gustavo Barreto Resende Islaeide da Silva Sobral Jane Cristina Lopes Pimentel Jefferson Otaviano Torres Leite Larissa Catão Tenório Falcão Luma Cardoso Ferro de Almeida Maria do Socorro Falcão Berto Michel de Sousa Miranda Rosivania Ivany de Lima Silva Vinicius Cavalcante Bezerra Wallyson Bezerra de Freitas Wanessa Ferreira de Lima

Edição 2013

Sumário Apresentação 5 Ambiente e Softwares 7 O Ambiente de Colaboração 7 Softwares 14
Sumário Apresentação 5 Ambiente e Softwares 7 O Ambiente de Colaboração 7 Softwares 14

Sumário

Apresentação

5

Ambiente e Softwares

7

O Ambiente de Colaboração

7

Softwares

14

Jogo light-Bot

14

RoboMIND

14

Scratch

14

Conceitos Básicos

15

Você sabe o que é lógica?

15

Lógica na Programação de Computadores

17

Algoritmo! O que é isso?

18

Como funciona um computador?

21

Hardware

21

Software ou Programas de Computador

22

Dados e Informação

24

Dados

24

Informação

24

Entrada e Saída

25

Processamento

25

Representações de Dados

27

Tipos primitivos de dados

27

Inteiro

28

Real

28

Caractere

28

Lógico ou Booleano

29

Variáveis

29

Por que declarar variáveis e como nomeá-las?

31

Constantes 32 Expressões Aritméticas e Lógicas 36 Operadores Relacionais 38 Operadores

Constantes

32

Expressões Aritméticas e Lógicas

36

Operadores

Relacionais

38

Operadores

Lógicos

39

Comandos

de

Atribuição

41

Comandos de Entrada e Saída

42

Estruturas de Controle, Seleção e Repetição

44

Estrutura Sequencial

44

Comandos de Decisão

47

Se Então

47

Resposta

48

Senão

48

Estruturas de Seleção Simples

50

Estrutura de Seleção Composta

51

Estruturas de Seleção Encadeada

52

Estrutura de Repetição

53

Tipos de estrutura de repetição

55

Jogos e Softwares

60

light-Bot

60

Conhecendo o Jogo

61

Scratch

64

Conhecendo o Software

64

RoboMIND

74

Conhecendo o Ambiente

75

Referências

84

Caro estudante, Apresentação Este é um material criado especialmente para você. Através dele, esperamos contribuir
Caro estudante, Apresentação Este é um material criado especialmente para você. Através dele, esperamos contribuir

Caro estudante,

Apresentação

Este é um material criado especialmente para você. Através dele, esperamos contribuir para o seu desenvolvimento durante o Curso. O Manual do Estudante é um instrumento de orientação no qual você encontrará informações sobre a estrutura do Curso. Além disso, apresenta orientações importantes para os diferentes momentos (presenciais e virtuais) deste Curso. Neste sentido, a leitura do manual é primordial para um bom desempenho no Curso.

Equipe de Desenvolvimento.

“Não se pode ensinar coisa alguma a alguém, pode-se apenas auxiliá-lo a descobrir por si
“Não se pode ensinar coisa alguma a alguém, pode-se apenas auxiliá-lo a descobrir
por si mesmo".
Galileu Galilei

Sobre o Curso:

O Curso é destinado a alunos do Ensino Médio regular e tem como objetivo principal o desenvolvimento do raciocínio lógico através de conceitos de programação. Dessa forma, auxiliar a resolução de problemas do cotidiano e, “enxergar” na Ciência da Computação como uma possibilidade de escolha para sua carreira acadêmica. Este Curso possui uma carga horária total de 25 horas, com três encontros presenciais (5 horas por aula) e duas semanas de atividades à distância. Serão abordados os seguintes temas: Lógica de Programação, Tipos de Dados, Variáveis, Expressões Lógicas e Aritméticas, Comando de Atribuição, Comando de Entrada e Saída, Estruturas de Controle, Estruturas de Seleção, Estruturas de Repetição.

Nas atividades que serão desenvolvidas, poderá ser observado que os conceitos trabalhados são comuns nas

Nas atividades que serão desenvolvidas, poderá ser observado que os conceitos trabalhados são comuns nas atividades cotidianas e a partir desta constatação será possível empregá-los com maior consciência na resolução de novos problemas.

IMPORTANTE! Não esqueça que para participar no Curso você precisará: - Ter acesso a Computador
IMPORTANTE!
Não esqueça que para participar no Curso você precisará:
- Ter acesso a Computador e Internet diariamente;
- Ter disponibilidade para os encontros presenciais.
Ambiente e So ftwares 1 Neste Módulo você encon trará uma apresentação do Ambiente de

Ambiente e So ftwares

1
1

Neste Módulo você encon trará uma apresentação do Ambiente de C olaboração onde serão disponibilizadas as aulas e todo material acerca do conteúdo abordado. Também conhecerá os softwares que serão utiliza dos para o desenvolvimento do Curso.

O Ambiente de Col aboração

A Rede Social Educ acional (REDU) foi

de Informática (CIn)

da Universidade Fede ral de Pernambuco (UFPE) e lançada em Fe vereiro de 2010.

“Trata-se de um ambien te para professores e

criar situações de

aprendizagem por meio da Internet e de dispositivos móveis” (GOMES, 2013). A Plataforma tem como f oco ensino e possibilita um novo espaço d e ambiente virtual de aprendizagem, no qual pr ofessores e alunos podem criar interagir, c ompartilhar e discutir conteúdos (textos, imagens , vídeos, apresentações, aplicativos, outros).

imagens , vídeos, apresentações, aplicativos, outros). desenvolvida no Centro Figura 1: RE DU. alunos que permite
imagens , vídeos, apresentações, aplicativos, outros). desenvolvida no Centro Figura 1: RE DU. alunos que permite

desenvolvida no Centro

Figura 1: RE DU.

alunos que permite

Realizei o cadastr o no Ambiente. E agor a?
Realizei o cadastr o no
Ambiente. E agor a?
no Centro Figura 1: RE DU. alunos que permite Realizei o cadastr o no Ambiente. E

Figura 2: Tela de i nício.

no Centro Figura 1: RE DU. alunos que permite Realizei o cadastr o no Ambiente. E

7

Após a realização de seu c adastro na Plataforma você será direcionad o a sua

Após a realização de seu c adastro na Plataforma você será direcionad o a sua página. Então, você irá procurar pelo Cu rso, Introdução à Programação – UPE Gar anhuns, no qual irá se matricular (Figura 3).

A opção destacada na Fig ura 3 indica a barra de pesquisa do ambie nte, nela será possível

pesquisar pelo Curso de

Introdução à Programação – UPE G aranhuns, uma vez

encontrado clique para pro sseguir.

UPE G aranhuns, uma vez encontrado clique para pro sseguir. Figura 3: Pesquisar por o Curso

Figura 3: Pesquisar por o Curso de Introdução à Programaçã o.

Como faço para me matr icular no Curso?
Como
faço
para
me
matr icular
no
Curso?
o. Como faço para me matr icular no Curso? opção Matricular-se momento você já terá acesso

opção Matricular-se momento você já terá

acesso a todo o material, informações, d iscussões, webquests,

fóruns, entre outros.

Uma vez encontrado o Curso clique na (Figura 4) para se tornar aluno. Nesse

Figura 4: Matrícula no Curso. Onde encontro os conteúdos dispo níveis para o Curso? As
Figura 4: Matrícula no Curso. Onde encontro os conteúdos dispo níveis para o Curso? As

Figura 4: Matrícula no Curso.

Onde encontro os conteúdos dispo níveis para o Curso?
Onde encontro os conteúdos dispo níveis
para o Curso?
Onde encontro os conteúdos dispo níveis para o Curso? As disciplinas são divididas e m Módulos,

As disciplinas são divididas e m Módulos, que são conjuntos de aulas com conteúdo s em comum. Dentro dos módulos é possível visu alizar os conteúdos

referentes ao Curso Introdução à

Conteúdo (Figura 5) localizada de ntro das disciplinas.

Programação na opção

Fig ura 5: Conteúdo disponível para cada módulo. Onde i rei debater e esclarecer dúvidas
Fig ura 5: Conteúdo disponível para cada módulo. Onde i rei debater e esclarecer dúvidas

Fig ura 5: Conteúdo disponível para cada módulo.

Onde i rei debater e esclarecer dúvidas das aulas?
Onde i rei debater e esclarecer
dúvidas das aulas?
Onde i rei debater e esclarecer dúvidas das aulas? No Mur al da Disciplina (Figura 6)

No Mur al da Disciplina (Figura 6), que é um espaç o aberto para debates e esclarec imento de dúvidas sobre as aulas com profe ssores e outros alunos.

Nele es tão todas as atualizações realizadas na Disc iplina, o que inclui a

de aulas e comentários, sendo possível ai nda pedir auxílio aos

colegas e aprender de um jeito dinâmico.

criação

Figura 6: Ferramenta Mural de Discussão. T enho espaço para minhas próprias p ostagens? Si
Figura 6: Ferramenta Mural de Discussão. T enho espaço para minhas próprias p ostagens? Si

Figura 6: Ferramenta Mural de Discussão.

T enho espaço para minhas próprias p ostagens?
T enho espaço para minhas próprias
p ostagens?
T enho espaço para minhas próprias p ostagens? Si m! O espaço Meu Mural (Figura 7)

Si m! O espaço Meu Mural (Figura 7) dispo nível logo abaixo do per fil, está aberto a todos os seus próprios co mentários e postagens. Vo cê também visualiza todas as atualizações re alizadas no ambiente.

Figura 7: Meu Mural. Posso me comunicar por bate-pap o? Claro que sim! A Plataforma
Figura 7: Meu Mural. Posso me comunicar por bate-pap o? Claro que sim! A Plataforma

Figura 7: Meu Mural.

Figura 7: Meu Mural. Posso me comunicar por bate-pap o? Claro que sim! A Plataforma conta
Posso me comunicar por bate-pap o?
Posso me comunicar por bate-pap o?

Claro que sim! A Plataforma conta c om a ferramenta Chat

(Figura 8), localizada abaixo do Per fil de Usuário. Nela é possível o envio de mensagens insta ntâneas para discutir,

com os envolvidos, os assuntos o

adicionar os tutores e demais al unos do Curso para

comunicar-se por bate papo.

Curso. Lembre-se de

Figura 8: Ferramenta Chat. P ara mais informações sobre o Ambi ente a cesse os
Figura 8: Ferramenta Chat. P ara mais informações sobre o Ambi ente a cesse os

Figura 8: Ferramenta Chat.

P ara mais informações sobre o Ambi ente a cesse os links abaixo. Redu: http://ajuda.redu.com.br/
P ara mais informações sobre o Ambi ente
a cesse os links abaixo.
Redu: http://ajuda.redu.com.br/
Guia Básico: http://ajuda.redu.com.br/guia-
basico
Guia do Aluno: http://ajuda.redu.com.br/gu
ia-do-aluno
Softwares Durante o desenvolvimento Programação, vamos conh ecê-los? Para aprender a utilizar esse softw ares

Softwares

Durante o desenvolvimento

Programação, vamos conh ecê-los? Para aprender a utilizar esse softw ares veja o módulo 5 com os tutoriais.

do Curso você utilizará alguns softwares pa ra auxiliar o estudo da

Jogo light-Bot

Neste jogo online você pod erá controlar um robô através

de diversas ações para

que ele alcance o objetivo

proposto e acenda a luz em sua cabeça.

alcance o objetivo proposto e acenda a luz em sua cabeça. F igura 9: light-Bot. Fique

F igura 9: light-Bot.

Fique atento! Existe uma quantidade limitada de ações que ele pode realizar. ACESSO AO JOGO: http ://clickjogos.uol.com.br/Jogos-online/Puzzle /Light-Bot/

://clickjogos.uol.com.br/Jogos-online/Puzzle /Light-Bot/ Figura 10: RoboMIND. RoboMIND Um ambiente para
://clickjogos.uol.com.br/Jogos-online/Puzzle /Light-Bot/ Figura 10: RoboMIND. RoboMIND Um ambiente para
://clickjogos.uol.com.br/Jogos-online/Puzzle /Light-Bot/ Figura 10: RoboMIND. RoboMIND Um ambiente para

Figura 10: RoboMIND.

RoboMIND

Um ambiente para programação de conhecer conceitos básicos de computadores. Através do RoboMIND um robô que anda, vê, pega objetos realizar diversos experimentos.

robôs, que permite programação de você pode programar e pinta, sendo possível

DOWLOAD DO SOFTW ARE: http://www.baixaki.com.br/download /RoboMIND.htm

Scratch

Um programa que perm ite criar animações, histórias interativas e até mesmo jo gos por meio de uma linguagem de programação simples.

MAIS INFORMAÇÕES: http://scratch.mit.edu/

por meio de uma linguagem de programação simples. MAIS INFORMAÇÕES: http://scratch.mit.edu/ Fi gura 11: Schatch. 14

Fi gura 11: Schatch.

Conceitos Básicos 2 Seja bem vindo ao módulo de Conceitos Básicos! Nele será possível encontrar

Conceitos Básicos

2
2

Seja bem vindo ao módulo de Conceitos Básicos! Nele será possível encontrar uma visão

geral dos conceitos tratados durante este curso, embora alguns sejam considerados novos para

você. Mesmo assim, será possível observar, de maneira simples, que você já lida com alguns

deles no cotidiano.

simples, que você já lida com alguns deles no cotidiano. Figura 12 . dizer o que

Figura 12.

dizer o que é lógica?

Você sabe o que é lógica?

“Mas é lógico que eu sei!”

Você já ouviu falar em Lógica? Não? Mas, com certeza já ouviu

a expressão anterior “mas é lógico que eu sei” ou “é lógico que

isso não daria certo”. Não é? (ARAÚJO, p. 13, 2009)

Pensando assim estamos tendo pensamento lógico?

Você sabe

A palavra lógica vem de um termo grego e foi criada pelo filósofo grego Aristóteles, no

século IV a. C., para estudar o pensamento humano e diferenciar interferências e argumentos

certos e errados.

Podemos defini-la como:

Ciência das formas do pensamento. A Lógica estuda a correção do raciocínio, visto que ele
Ciência das formas do pensamento. A Lógica estuda a correção do raciocínio, visto que
ele é a forma mais complexa do pensamento. Podemos dizer que a Lógica visa à ordem da
razão, isto é, a razão pode funcionar desordenadamente e a Lógica estuda e ensina a
colocar ordem no pensamento (ARAÚJO, p. 15, 2009).
Existe Lógica no dia a dia? Sempre que estamos pensando, a lógica ou a ilógica
Existe Lógica no dia a dia?
Existe Lógica no dia a dia?
Existe Lógica no dia a dia? Sempre que estamos pensando, a lógica ou a ilógica (não

Sempre que estamos pensando, a lógica ou a ilógica (não ter lógica

ou ser contrário a ela), nos acompanham. escrevemos, estamos expressando nossos

precisamos usar a lógica nessas atividades pa ra organizar as ideias.

Quando falamos ou pensamentos, logo,

Podemos perceber a importância da lógic a na nossa vida, não apenas na teoria, mas principalmente na p rática, já que, quando queremos pensar, falar, e screver ou agir corretamente, precisamo s colocar ordem no pensamento, isto é, utiliza r lógica.

Exemplos

1-

A gaveta está fecha da;

A caneta está dentr o da gaveta;

Precisamos primeir o abrir a gaveta para depois pegar a

caneta.

primeir o abrir a gaveta para depois pegar a caneta. Figura 13 . Figura 14 .

Figura 13.

o abrir a gaveta para depois pegar a caneta. Figura 13 . Figura 14 . 2-

Figura 14.

2- Anacleto é mais velho que Felisber to; Felisberto é mais velho que Marina ldo; Logo, Anacleto é mais velho que M arinaldo.

Vamos praticar? Dois pais e dois filhos pa sseavam por um bosque e encontraram uma

Vamos praticar?

Dois pais e dois filhos pa sseavam por um bosque e

encontraram uma laranje ira com quatro laranjas.

Cada um chupou uma laran ja e ainda sobrou uma.

laranjas. Cada um chupou uma laran ja e ainda sobrou uma. Fi gura 15 . Mas

Fi gura 15.

Mas o que isso te m haver com programação?
Mas o que isso te m
haver com
programação?
Fi gura 15 . Mas o que isso te m haver com programação? Lógica na Programação

Lógica na Programação de C omputadores

Quando falamos em

computadores, sempre nos remete mos à sequência de

lógica n a programação de

instruções.

Mas, o que é uma instrução ?

Instrução pode ser conside realização de uma tarefa ( rada um conjunto de regras ou
Instrução pode ser conside
realização de uma tarefa (
rada um conjunto de regras ou normas defini
ARAÚJO, p. 19, 2009).
das para a

A lógica na programação

identificar uma sequência

alcancemos como saída à s olução do problema.

consiste em: dado um problema e fornecido s os dados de entrada,

de instruções tal que, por meio da exec ução desta sequência

Lógica, dados, sequência, i nstruções, saída, solução de problemas? O q ue isso tem haver com

programação?

Com certeza ao falar em prossiga sua leitura e descu bra essa relação. computação ou

Com certeza ao falar em

prossiga sua leitura e descu bra essa relação.

computação ou programação você já ouvi u falar em algoritmo,

Algoritmo! O que é is so?

Embora a palavra seja e stranha para algumas pessoas, muitas associam apenas a Compu tação. O termo algoritmo não é restrito apenas a esta área e també m não surgiu junto com os computadores. O termo é bastante utiliz ado em outras áreas, como Engenharia, Administração, Matemátic a, entre outras.

Mas afinal o que é um algoritmo?

a, entre outras. Mas afinal o que é um algoritmo? Figura 17 . Algoritmo, nada mais

Figura 17.

Algoritmo, nada mais é d o que uma sequência lógica de instruções, execução de uma tarefa.

passo a passo, para a

execução de uma tarefa. passo a passo, para a Então, quer diz er que eu uso
Então, quer diz er que eu uso algoritm os no meu dia-a-dia?
Então, quer diz er que
eu uso algoritm os no
meu dia-a-dia?
EXATO! Um exemplo clássico de algoritmos é a receita culinária. Relembre a definição de instrução

EXATO! Um exemplo clássico de algoritmos é a receita culinária. Relembre a definição de

instrução vista anteriormente.

Relembre a definição de instrução vista anteriormente. Figura 18 . Um problema: Quero bolo de chocolate!

Figura 18.

Um problema: Quero bolo de chocolate!

Dados de entrada: Ingredientes.

Uma sequência de instruções: Modo de preparo.

Saída e/ou solução do problema: Um bolo de chocolate.

Saída e/ou solução do problema: Um bolo de chocolate. Figura 19 . Veja outros exemplos de

Figura 19.

Veja outros exemplos de algoritmos que você pode observar no cotidiano.

∑ Resolver uma operação matemática seguindo passos até chegar ao resultado final. ∑ Ligar o
∑ Resolver uma operação matemática seguindo passos até chegar ao
resultado final.
∑ Ligar o forno de micro-ondas seguindo as etapas de conectar a energia,
apertar determinados botões, sequencialmente, até que a máquina seja
ligada;
∑ Tomar medicamentos seguindo orientação médica.

Esses exemplos têm todas as características de um algoritmo.

Uma tarefa a ser realizada.

Uma sequência detalhada de passos.

E também podemos identificar entradas e saídas.

Vamos jogar um pouco

Usando o ligth-Bot, jogo apresentado no Módulo I (Introdução) observe que estamos criando

algoritmos, pois, temos:

Uma tarefa para ser realizada (levar o robô até o local indicado); Uma sequência detalhada

Uma tarefa para ser realizada (levar o robô até o local indicado);

Uma sequência detalhada de passos (as instruções dadas ao robô);

Uma entrada (local onde o robô se encontra) e uma saída (passar para a próxima fase).

Vá até o Módulo V e veja o tutorial de como jogar.

Agora que você já conhece o ambiente, tente resolver o desafio abaixo:

Crie os obstáculos a seguir e atribua os comandos necessários para que o robô alcance o quadrado azul e acenda a luz nele. Preste atenção em todos os comandos que serão necessários.

atenção em todos os comandos que serão necessários. Figura 20 . Porque é importante construir um

Figura 20.

Porque é importante construir um algoritmo?

Um algoritmo tem por objetivo representar mais fielmente o raciocínio envolvido na Lógica de programação e, dessa forma, permite-nos abstrair de uma série de detalhes computacionais, que podem ser acrescentados mais tarde. Assim, podemos focalizar nossa atenção naquilo que é mais importante: a lógica da construção de algoritmos.

Por que a palavra algoritmo ficou tão associada à computação? Para compreender melhor os motivos,
Por que a palavra algoritmo ficou tão associada à computação? Para compreender melhor os motivos,

Por que a palavra algoritmo ficou tão associada à computação?

Para compreender melhor os motivos, sinta-se convidado

a viajar conosco no mundo dos computadores e entender

melhor o funcionamento deles.

Figura 21.

Como funciona um computador?

O computador é composto, basicamente, de duas partes: a parte física, chamada de hardware,

e a parte lógica, chamada de software.

Hardware

A parte física é formada basicamente por uma Unidade Central de Processamento (UCP), pela

memória e pelos dispositivos de entrada e saída (Veja um exemplo na Figura 22).

UCP – Unidade Central de Processamento

Memória

BARRAMENTO
BARRAMENTO

Dispositivos

Entrada/Saída

Memória BARRAMENTO Dispositivos Entrada/Saída Conexões externas Teclado Mouse Monitor Impressora Etc

Conexões

externas

Teclado

Mouse

Entrada/Saída Conexões externas Teclado Mouse Monitor Impressora Etc Figura 22: Arquitetura simplificada

Monitor

Impressora

Etc

Figura 22: Arquitetura simplificada de um computador.

A UCP (ou processador) contém um conjunto relativamente pequeno de instruções que é capaz de

A UCP (ou processador) contém um conjunto relativamente pequeno de instruções que é capaz de executar. Cada processador contém um conjunto diferente de instruções, apesar de similares entre si. Tomando esse conceito que parece complicado para a vida cotidiana, imagine que essas instruções são contidas em um manual. Se você comprar dois celulares de marcas diferentes, seus manuais podem ter instruções de uso semelhantes, porém algumas são diferentes.

de uso semelhantes, porém algumas são diferentes. Figura 23 . Figura 24 . As instruções que

Figura 23.

uso semelhantes, porém algumas são diferentes. Figura 23 . Figura 24 . As instruções que o

Figura 24.

As instruções que o processador executa são buscadas na memória. Essas instruções podem ser desde operações matemáticas a interações com dispositivos de entrada e saída.

Software ou Programas de Computador

Chamamos de programa de computador um conjunto de instruções que será executado pelo processador em uma determinada sequência. Esse programa leva o computador a executar uma tarefa, um programa nada mais é do que um algoritmo que está modelado e implementado em determinada linguagem de programação.

Vamos jogar um pouco

Usando novamente o jogo que já conhecemos ligth-Bot, observe que estamos inserindo um conjunto de instruções, onde você determina a sequência em que estas devem ser executadas, e que o nosso “computador” (representado pelo robô) está executando essas tarefas.

Tente resolver os desafios abaixo.

Desafio 1: Crie os obstáculos a seguir, agora mais complexos, atribua os comandos necessários para

Desafio 1:

Crie os obstáculos a seguir, agora mais complexos, atribua os comandos necessários para que o robô alcance o quadrado azul e acenda a luz nele. Preste atenção em todos os comandos que serão necessários.

atenção em todos os comandos que serão necessários. Desafio 2: Figura 25 . Crie os obstáculos

Desafio 2:

Figura 25.

Crie os obstáculos a seguir, agora perceba que será necessária uma função para que o robô alcance o quadrado azul e acenda a luz nele. Preste atenção em todos os comandos que serão necessários.

alcance o quadrado azul e acenda a luz nele. Preste atenção em todos os comandos que

Figura 26.

Dados e Informação Dados Podemos definir dado, como qualquer elemento identificado em sua forma bruta

Dados e Informação

Dados

Podemos definir dado, como qualquer elemento identificado em sua forma bruta que, por si só, não conduz a uma compreensão de determinado fato ou situação. Os dados podem ser considerados a unidade básica da informação. Sem dados, não temos informações, pois estas são criadas a partir dos dados.

Para simplificar

Vamos pensar em uma empresa!

dos dados. Para simplificar Vamos pensar em uma empresa! Figura 27 . No relatório de vendas

Figura 27.

No relatório de vendas de uma empresa, foi obtido o dado de que ela vendeu um total de R$ 500.000,00 (quinhentos mil reais). O que isso significa? Nada! Isso é só um dado, ele não diz que a empresa obteve ou não lucro com estas vendas.

Informação

É o resultado do processamento dos dados. Os dados foram analisados e interpretados sob determinada ótica, e a partir dessa análise se torna possível qualificar esses dados. Por tanto, informações são dados com algum significado ou relevância. A informação é a compreensão dos dados.

Lembra-se do exemplo anterior da Loja?

Vamos transformar os dados sobre as vendas da empresa em informação. Imaginemos que e meta de vendas da empresa fosse de R$ 800.000,00 (oitocentos mil reais), e com esse total de vendas ela poderia pagar suas contas, funcionários etc.

de vendas ela poderia pagar suas contas, funcionários etc. Figura 28 . Fazendo o processamento dos

Figura 28.

Fazendo o processamento dos dados, obtemos a informação de que a empresa não obteve o volume de vendas necessário à manutenção de suas atividades.

Entrada e Saída Um sistema/programa é composto de entrada, processamento e saída, como mostra a

Entrada e Saída

Um sistema/programa é composto de entrada, processamento e saída, como mostra a figura abaixo.

processamento e saída, como mostra a figura abaixo. Figura 29 . As linguagens de programação estão

Figura 29.

As linguagens de programação estão preparadas para receber entradas e apresentar saídas (Lembra-se do Bolo? Ele recebeu os ingredientes e a saída foi um bolo de chocolate!).

Desta forma, durante a execução de um programa, um usuário poderá informar valores (entrada) para que estes sejam processados pelo computador (processamento) que, por sua vez, retornará o resultado do processamento (saída). Existem muitos meios de entrada e saída em um computador. Como dispositivos de entrada, podemos citar o teclado, o mouse, o scanner etc. como saída, temos vídeo, impressora etc

Processamento

O processamento de dados consiste em realizar um processo sobre qualquer dado de entrada com o objetivo de gerar uma saída aceitável ou próxima disso (O Modo de Preparo do Bolo!).

Vamos ver como isso acontece no computador!

Figura 30 . Capturar: Buscar os dado s onde eles existem e trazê-los. Manipular: Tratar
Figura 30 . Capturar: Buscar os dado s onde eles existem e trazê-los. Manipular: Tratar

Figura 30.

Capturar: Buscar os dado s onde eles existem e trazê-los.

Manipular: Tratar os d ados de forma que possam ser organiza dos e ganhar sentido

(transformando-se em infor mação).

Armazenar: Guardar os d ados de maneira organizada.

Recuperar: Buscar os dad os que foram armazenados de forma organiza da.

Apresentar: Mostrar os da dos de forma compreensível.

Transmitir: Enviar e receb er dados de outros locais.

Nes te Módulo você pôde aprender O que é Lógica O que é algoritmo O
Nes
te Módulo você pôde aprender
O que é Lógica
O que é algoritmo
O que é um progr
O que são Dados
Como um progr
saída)
ama de computador
e o que são Informações
ama de computador funciona (Entrada, pr
ocessamento e
Prossi
ga nos seus estudos, ainda temos muito
a aprender
Rep resentações de Dados 3 Caro Aluno, neste módu lo você conhecerá alguns conceitos básic

Rep resentações de Dados

3
3

Caro Aluno, neste módu lo você conhecerá alguns conceitos básic os de linguagem de programação e exemplos d o nosso cotidiano relacionados a esses concei tos.

algoritmos são muito

É importante que ao final

parecidos com os programa s interpretados por computadores. Bom Estudo!

deste módulo você possa compreender como

Bom Estudo! deste módulo você possa compreender como Figura 31 . Tip os primitivos de dados

Figura 31.

Tip os primitivos de dados

O q ue são?

São

usad os também por uma linguagem algorítmica.

os tipos básicos de qualquer linguagem d e programação, sendo

Como assim?

de qualquer linguagem d e programação, sendo Como assim? Figura 32: Z e r o Figura

Figura 32: Z

ero

d e programação, sendo Como assim? Figura 32: Z e r o Figura 33: 1+1=2 Figura

Figura 33:

1+1=2

sendo Como assim? Figura 32: Z e r o Figura 33: 1+1=2 Figura 34: Letras A

Figura 34:

Letras

A seguir são apresentados os tipos de dados primitivos mais comuns e ncontrados na maioria das linguagens de program ação.

Inteiro É uma representação dos números inteiros da matemática nos computadores. Podem ser positivos, negativos

Inteiro

É uma representação dos números inteiros da matemática nos computadores. Podem ser positivos, negativos ou nulos. Não possuem parte fracionária.

Por Exemplo:

2 laranjas, sapato tamanho 42, 65535 grãos, 0 pessoas na fila, multa de -2 pontos no campeonato .

0 pessoas na fila, multa de -2 pontos no campeonato . Figura 35 . Real Figura

Figura 35.

Real

fila, multa de -2 pontos no campeonato . Figura 35 . Real Figura 36 . É

Figura 36.

É um tipo de dado que permite armazenar valores decimais, em outras palavras, valores com ponto decimal (5.7, 3.2, -8.5).

Por Exemplo:

Um cliente depositou R$ 50,50 em sua conta corrente. Esse é um valor candidato a ser do tipo Real, pois pode conter valores de centavos, ou seja, valores que podem definir frações de um inteiro.

Digamos que um veículo percorreu uma distância entre duas cidades, que foi de 150,3 km. Neste caso, precisamos de valores após a casa decimal para efetuar cálculos, e novamente a melhor escolha parece ser o tipo Real.

e novamente a melhor escolha parece ser o tipo Real. Figura 37 . Caractere É uma

Figura 37.

Caractere

É uma representação das letras, dígitos e símbolos nos computadores. Podendo ser numéricos, alfabéticos e especiais.

Por Exemplo: Numéricos: 2, 4, 0. Alfabét icos: a, B, z. Especiais: @, #, &

Por Exemplo:

Numéricos: 2, 4, 0. Alfabét icos: a, B, z. Especiais: @, #, &

Representação: pessoas = { Maria, João, José, Ana,

}

conjunto de cadei as de caracteres.

Operações:

comer, dormir, andar, beber.

Lógico ou Booleano

Só podem assumir dois va lores: verdadeiro ou falso. Servem como uma repre sentação lógica de algo. Estes valores também pod em ser entendidos como:

ligado/desligado, 1/0, alto/ baixo, fechado/aberto, etc.

ligado/desligado, 1/0, alto/ baixo, fechado/aberto, etc. Figura 38 . Exemplos de inform ações que podem ser

Figura 38.

Exemplos de inform ações que podem ser representadas utilizando o tipo lógico são:

que podem ser representadas utilizando o tipo lógico são: Figura 39: A Lâmpada está acessa. Figura

Figura 39: A Lâmpada está acessa.

o tipo lógico são: Figura 39: A Lâmpada está acessa. Figura 40: A Lâmpa da está

Figura 40: A Lâmpa da está apagada.

Variáveis

São valores que podem sof rer alteração no decorrer do tempo.

Quais valores variam no nosso dia a dia? Figura 41: Dinheiro na Carteira Figura 42:

Quais valores variam no nosso dia a dia?

Quais valores variam no nosso dia a dia? Figura 41: Dinheiro na Carteira Figura 42: O

Figura 41: Dinheiro na Carteira

variam no nosso dia a dia? Figura 41: Dinheiro na Carteira Figura 42: O Peso de

Figura 42: O Peso de uma pessoa

41: Dinheiro na Carteira Figura 42: O Peso de uma pessoa Figura 43: Preço da gasolina

Figura 43: Preço da gasolina

Ao criarmos nossos algoritmos, precisamos guardar dados referentes ao problema, como um nome, um número ou mesmo o resultado de uma operação. Mas, para armazenar esses dados, precisamos pedir ao computador que ele reserve uma parte da memória para nosso uso. A forma de solicitar ao computador que reserve memória é chamada de declaração de variáveis.

Na Prática:

Variável = Conteúdo da Variável

Variável = Conteúdo da Variável NOME = "JOSE" IDADE = 50

NOME = "JOSE"

IDADE = 50

Variável: Tipo de Variável

Variável: Tipo de Variável notaMedia, salario: real Contador: inteiro Achou: Lógico (booleano) Sexo: caractere

notaMedia, salario: real

Contador: inteiro

Achou: Lógico (booleano)

Sexo: caractere

A palavra var é utilizada para indicar qu estamos declarando uma variável. e Precisamos informar
A palavra var é utilizada para indicar qu estamos declarando uma variável. e
A palavra var é utilizada para indicar qu
estamos declarando uma variável.
e
Precisamos informar o tipo de dados q na variável para que o computador s espaço
Precisamos informar o tipo de dados q
na variável para que o computador s
espaço de memória que reservará.
ue armazenaremos
aiba o tamanho do

P or que declarar variáveis e como no meá-las?

Q uando pedimos que o computador reserve te mos de informar como vamos nos referir a

reserve te mos de informar como vamos nos referir a espaço de memória, essa parte da

espaço de memória, essa parte da memória

re servada, ou seja, qual nome daremos a ess e espaço de memória. A ssim, toda variável tem um nome através d o qual é referenciada. Po is sempre que criamos uma variável, nó s o fazemos com o objetivo de armazenar algu m tipo de valor específico.

Assim, o nome da variável

nomes sugestivos. A seguir serão apresentadas algumas regras para vari áveis:

deve deixar claro o objetivo da mesma, ou seja, devemos utilizar

REGRAS ∑ Inicie sempre por um caractere alfabético, nunca por um número. ∑ “Não utilize
REGRAS ∑ Inicie sempre por um caractere alfabético, nunca por um número. ∑ “Não utilize

REGRAS

Inicie sempre por um caractere alfabético, nunca por um número.

“Não utilize caracteres especiais como “,( ) /*; +.

Não coloque espaços em Branco ou hífen entre nomes.

Utiliza, se necessário, _ underline.

Vamos ver alguns exemplos das regras, o que é permitido e não permitido na declaração de variáveis:

é permitido e não permitido na declaração de variáveis: Figura 44 . Constantes São valores que
é permitido e não permitido na declaração de variáveis: Figura 44 . Constantes São valores que

Figura 44.

Constantes

São valores que não sofrem nenhuma variação no decorrer do tempo.

O que pode representar uma constante no nosso dia a dia?

Figura 45: Placa Pare Figura 46: Significado do sinal de Vermelho no Transito Figura 47:
Figura 45: Placa Pare Figura 46: Significado do sinal de Vermelho no Transito Figura 47:

Figura 45:

Placa Pare

Figura 45: Placa Pare Figura 46: Significado do sinal de Vermelho no Transito Figura 47: PI

Figura 46:

Significado do sinal de Vermelho no Transito

Pare Figura 46: Significado do sinal de Vermelho no Transito Figura 47: PI Na Prática: CONSTANTES

Figura 47: PI

Na Prática:

CONSTANTES
CONSTANTES

PI = 3.1416;

MAX = 10;

OK = V;

OPCAO = ‘A’;

Observação: Declarar as constantes antes das variáveis.
Observação:
Declarar as
constantes antes
das variáveis.
A palavra CONST é utilizada para indicar que estamos declarando uma constante. O nome da
A palavra CONST é utilizada para indicar que estamos declarando uma constante. O nome da
A palavra CONST é utilizada
para
indicar
que
estamos declarando uma constante.
O nome da consta
nte. É o nome através
do qual vamos no
s referir à constante.
Apenas para ficar d
iferente das variáveis,
aconselha-se que
todas as letras dos
nomes das constant
es sejam maiúsculas.
Valor é o valor assu
mido pela constante.

REGRAS

Segue

exceto

maiúsc

as mesmas regras das variáveis, que são escritas com letras ulas.

O que é permitido e não p ermitido para as constantes? Figura 48 . ATENÇÃO!

O que é permitido e não p ermitido para as constantes?

O que é permitido e não p ermitido para as constantes? Figura 48 . ATENÇÃO! As

Figura 48.

ATENÇÃO! As Variáv valor a qualquer momen eis possuem um valor inicial, mas podem m
ATENÇÃO! As Variáv
valor a qualquer momen
eis possuem um valor inicial, mas podem m
to.
udar de
Como assim?
Digamos que você tenha
R$ 10,00 reais de pão na
passaria de R$ 100,00 re
na sua carteira R$ 100,00 reais e que você c
padaria então neste caso o valor da sua vari
ais para R$ 90,00.
ompre
ável
ATENÇÃO! Já as Cons
nunca irá mudar.
tantes são criadas possuindo um valor e esse
valor
Agora imagine que voc
deseja passar de um lad
maneira segura teria qu
caso a faixa de perdest
mudará de significado.
ê está em uma avenida muito movimenta
da
e
que
o para o outro da avenida. Para você para p
assar de
e andar pela a faixa de perdestes. Correto? S
es, pois ela possui um significado (valor) q
im nesse
ue nunca
pois ela possui um significado (valor) q im nesse ue nunca Saiba Ma is… Em: http://www.sib

Saiba Ma is…

Em: http://www.sib an.com.br/destaque/21_carta.pdf

http://www.youtube .com/watch?v=MksHE_lbRb0

Expressões Aritméticas e Lógicas Os operadores aritméticos são símbolos que representam as operações matemáticas

Expressões Aritméticas e Lógicas

Os operadores aritméticos são símbolos que representam as operações matemáticas básicas. Fáceis de utilizar parecem muito com um cálculo realizado em uma calculadora comum. Abaixo uma tabela com os operadores básicos aritméticos que utilizaremos neste curso.

básicos aritméticos que utilizaremos neste curso. Figura 49 : Operadores Básicos Aritméticos. ATENÇÃO!

Figura 49: Operadores Básicos Aritméticos.

ATENÇÃO! Criaremos um operador aritmético especial para obter o resto de uma divisão, chamaremos este
ATENÇÃO! Criaremos um operador aritmético especial para obter o resto de uma
divisão, chamaremos este operador de resto.
Como assim?
Digamos que você divida 10 por 3. O resultado dá 3 e sobra 1. Então, se utilizarmos o
operador de resto da divisão (também conhecido como módulo) para esse mesmo
cálculo, o resultado será 1. Se fizéssemos 20 % 3 o resultado seria 2 ou seja, o resto da
divisão de 20 por 3.

Os operadores aritméticos serão utilizados para formar expressões aritméticas. Já as expressões aritméticas por sua vez são formadas por operadores aritméticos que agem sobre operandos. Os operandos podem ser variáveis ou constantes do tipo numérico, inteiros ou reais. Abaixo temos duas expressões aritméticas:

Nota/2

x*2+y/2

Na resolução de expressões aritméticas deve-se utilizar a seguinte ordem de precedência entre os operadores:

Na resolução de expressões aritméticas deve-se utilizar a seguinte ordem de precedência entre os operadores:

PRIORIDADE

OPERADOR

OPERAÇÃO

* / %

Multiplicação, divisão, resto da divisão.

+ -

Adição, subtração

Tabela 1: Ordem de Precedência entre Operadores Aritméticos.

Além da ordem de prioridades definida acima, podemos utilizar parênteses. Assim, resolvemos primeiro as expressões contidas nos parênteses mais internos, seguindo a ordem de precedência entre operadores, passando depois para os parênteses mais externos.

Nota 1 + (nota2 + nota3) / 2

Observando o exemplo acima: Primeiro somamos nota2 a nota3; o resultado é divido por 2 e só depois somamos com nota 1.

Um fato interessante é que o resultado da execução de expressões aritméticas é sempre um valor numérico (inteiro ou real) que pode então ser atribuído a uma variável numérica através do uso do comando de atribuição estudado anteriormente.

Simplificando • Expressões aritméticas: uma conta • Operadores aritméticos: os sinais • Operandos
Simplificando • Expressões aritméticas: uma conta • Operadores aritméticos: os sinais • Operandos
Simplificando • Expressões aritméticas: uma conta • Operadores aritméticos: os sinais • Operandos
Simplificando
• Expressões aritméticas: uma conta
• Operadores aritméticos: os sinais
• Operandos aritméticos: consta
(inteiras ou reais), ou outra expressã
• Precedência na ordem dos cálc
matemática, podendo haver v
parênteses; não há colchetes [ ] ou c

a ser feita.

+ - * / %

ntes

ou

o aritmética.

variáveis

ulos: a mesma da

ários

níveis de

haves { }.

Para entendermos as expre ssões lógicas, primeiro precisamos conhecer os operadores lógicos

e relacionais, pois as expre ssões lógicas são formadas a partir da utilizaç ão desses operadores.

Operadores Relaciona is

são utilizados para realizar comparações ent re dois valores de um

mesmo tipo: Quando quer emos fazer comparações entre valores, ou e ntre expressões (tanto

matemáticas como lógicas) , precisamos utilizar os operadores relaciona is que são:

Os operadores relacionais

Comparações

Operadores

Igual

= =

Diferente

<>

Maior

>

Menor

<

Maior ou igual

>=

Menor ou igual

<=

Tabela 2: Operadores Relacionais.

A uma comparação realiza da utilizando um operador relacional se dá o nome de relação. O

resultado obtido de uma rel ação é sempre um valor lógico, verdadeiro o u falso.

Na tabela abaixo temos ex emplos de relações e seus resultados. Para ta is exemplos, considere

duas variáveis inteiras, A e B onde A=5 e B=8:

RELAÇÃO RESULTADO A==B Falso A < B Verdadeiro A>=B Falso B!= 6 Verdadeiro A

RELAÇÃO

RESULTADO

A==B

Falso

A < B

Verdadeiro

A>=B

Falso

B!= 6

Verdadeiro

A >= 5

Verdadeiro

Figura 3: Exemplos de Relações

O resultado de uma relação é sempre um valor lógico (verdadeiro ou falso).

Vejamos outros exemplos:

a)

2

+ 5 == 3 + 2

7

== 5

Resultado: F (falso)

b) 3 * 5<> 2 * 3

15 <> 6 Resultado: V (Verdadeiro)

Operadores Lógicos

Os operadores lógicos retornam verdadeiro ou falso de acordo com seus operandos. Os

operadores lógicos mais comuns são listados na tabela abaixo:

OPERADORES LÓGICOS

E

OU

NAO

Tabela4: Operadores Lógicos

39

Os resultados das operações lógicas são sempre valores lógicos (verdadeiro ou falso). Para trabalharmos adequadamente

Os resultados das operações lógicas são sempre valores lógicos (verdadeiro ou falso).

Para trabalharmos adequadamente com operadores lógicos, temos que conhecer a tabela verdade para cada um dos operadores. Uma tabela verdade é o conjunto de todas as possibilidades combinatórias entre os valores das variáveis lógicas, conforme apresentado a seguir.

 

A

B

AeB

 

F

F

F

F

V

F

V

F

F

V

V

V

Tabela5: Tabela Verdade Operador E

A

B

AouB

F

F

F

F

V

V

V

F

V

V

V

V

Tabela 6: Tabela Verdade Operador OU

A

Não A

F

V

V

F

Tabela 7: Tabela Verdade Operador Não

Saiba Mai s… Em: http://pt.wikiped ia.org/wiki/Atribui%C3%A7%C3%A3o_(computa %C3%A7%C3 %A3o) Comandos de Atribui
Saiba Mai s… Em: http://pt.wikiped ia.org/wiki/Atribui%C3%A7%C3%A3o_(computa %C3%A7%C3 %A3o) Comandos de Atribui

Saiba Mai s…

Em:http://pt.wikiped ia.org/wiki/Atribui%C3%A7%C3%A3o_(computa %C3%A7%C3

%A3o)

Comandos de Atribui ção

Define ou redefine o valor armazenado no local de armazenamento indi cado por um nome

de variável.

Representações textuais co muns do operador de atribuição incluem um sinal de igual ("=") e

classificam o operador de a tribuição como um operador infixo.

Para atribuímos um valor a n seguinte: num = 2 O valor 2 será armazenado
Para atribuímos um valor a n
seguinte:
num
= 2
O valor 2 será armazenado n
nome é num.
num = 2 O valor 2 será armazenado n nome é num. um escreve-se o a

um escreve-se o

a variável cujo

A instrução de atribuição m uitas vezes permite que o mesmo nome de v ariável possa conter

valores diferentes em mom entos diferentes durante a execução do progr ama.

Vejamos a seguinte situaçã o:

int x =10; real y; x =23; y =32.4;
int x =10;
real y;
x =23;
y =32.4;

41

Neste exemplo, a variável x é primeiramente declarada como um tipo de dado inteiro, e

Neste exemplo, a variável x é primeiramente declarada como um tipo de dado inteiro, e depois lhe é atribuído o valor 10. Observe que a declaração e a atribuição ocorrem no mesmo momento. Na segunda linha, y é declarada sem uma atribuição como um real. Na terceira

linha, a variável

x
x

é atribuído o valor de 23. Finalmente, a variável

y
y

é atribuído o valor de

32,4.

Comandos de Entrada e Saída

Comandos de saída são aqueles que permitem ao programador enviar dados para dispositivos periféricos de saída de dados (o monitor e a impressora, por exemplo) ou de armazenamento (tais como disquetes e discos rígidos).

Quando se deseja trabalhar com grandes quantidades de dados, o melhor é armazená-los numa unidade de memória secundaria, ou seja, em arquivos NO HD OU HARDDISK DO

Um programa pode gerar tantos dados que todos eles não caberiam na tela

de uma só vez, e ainda seriam perdidos ao finalizar o programa.

COMPUTADOR

e ainda seriam perdidos ao finalizar o programa. COMPUTADOR Figura 50 . Os dados salvos em

Figura 50.

Os dados salvos em arquivos podem ser usados pelo próprio programa ou exportados para serem processados de outra forma. Arquivos de leitura economizam um tempo precioso para o usuário do programa, pois ele não vai precisar enviar dados via teclado, e com arquivos milhares de dados podem ser lidos em segundos.

ARQUIVO - Local ou pasta de trabalho onde serão gravados dados no HD do computador.

ARQUIVO - Local ou pasta de trabalho onde serão gravados dados no HD do computador.

Um arquivo é composto por diversos registros de dados.

REGISTRO – Pode ser definida em termos didáticos como uma linha de dados gravada dentro

do arquivo no computador. Um registro pode ser composto de 1 ou vários campos de dados

CAMPOS - Um "campo" é uma sucessão de caracteres, que representa alguma informação, tal

como “universidade federal da Bahia”. Contextualizando:

Campo 1 (nome)

Campo 2 (aniversario)

Campo 3 (Salário)

Jose Maria de Almeida

28/12/1998

220,00

Maria da silva

01/01/1977

220,00

Jose de Almeida

01/05/1972

320,00

Tabela 8: Arquivo – Cadastro de Funcionários.

No nosso exemplo cada linha é um registro de dados. Cada registro é composto por 3 campos,

nome, data aniversario e salário.

Estruturas de Controle, Seleção e Repetição 4 Caro Estudante, seja bem vindo ao Módulo 4!

Estruturas de Controle, Seleção e Repetição

4
4

Caro Estudante, seja bem vindo ao Módulo 4! Estamos chegando ao final do nosso curso, neste módulo você conhecerá os conceitos de estrutura de controle, estrutura de seleção e estrutura de repetição, encontrará situações problemas onde utilizará essas estruturas, por meio de diversas atividades.

essas estruturas, por meio de diversas atividades. Estrutura Sequencial Estrutura sequencial refere-se aquela

Estrutura Sequencial

Estrutura sequencial refere-se aquela na qual uma instrução segue uma após a outra. As tarefas se sucedem de tal modo que a saída de uma tarefa é à entrada da tarefa seguinte.

que a saída de uma tarefa é à entrada da tarefa seguinte. Figura 51 . Quando

Figura 51.

Quando pensamos em fazer uma ligação, pegamos o celular, ligamos o celular, digitamos o número, e assim por diante até o termino da ligação.

Figura 52.

O exemplo acima, ilustra uma estrutura sequencial cujos comandos são executados na ordem em que aparecem, formando assim, um algoritmo.

Como assim? que ele deve fazer, chamamos isto de comando s de um algoritmo. Na

Como assim?

que ele deve fazer,

chamamos isto de comando s de um algoritmo.

Na estrutura sequencial

determinar de cima para b aixo, e assim, cada comando é executado a pós o fim do comando

anterior.

E para que o computador s aiba onde começar e onde terminar essa lista de comandos, eles são

delimitados pelas palavras reservadas Inicio e Fim.

Para um algoritmo poder

funcionar, você deve dizer claramente o

esses comandos serão executados na ord em em que você os

Palavras Reservadas? São palavras que, fo selecionadas para definir termos e specíficos de uma determinada
Palavras Reservadas?
São
palavras
que,
fo
selecionadas
para
definir
termos
e
specíficos
de
uma
determinada linguagem
ram
de programação.
de uma determinada linguagem ram de programação.   Voltemos a pensar no conjunto de passos par
 

Voltemos a pensar no conjunto de passos par

a realizar uma

l

igação no celular e vejamos como funciona e

ssa estrutura.

Inicio

Inicio

 

<pegue o celular> <ligue o celular> <digite o número> <inicie a chamada> <espere ser atendido> <fale ao telefone> <finalize a ligação>

<Comando - 1

>

<

Comando -

2>

<

Comando -

3>

.

.

.

<

Comando -

n>

Fimalgoritmo.

 

Fimalgoritmo

.

- n> Fimalgoritmo.   Fimalgoritmo . Na estrutura apresentada, o “comando-2” ou <ligue o

Na estrutura apresentada, o “comando-2” ou <ligue o celular> será exe cutado somente após o

fim do “comando-1” ou < pegue o celular> e o “comando-3” <digi te o número> após a

execução do “comando-2” e assim sucessivamente.

Vejamos outras situações semelhantes

A Loja Magazine está ve ndendo seus produtos em 2 (duas) prestaç ões sem juro.

A Loja Magazine está ve ndendo seus produtos em 2 (duas) prestaç ões sem juro. Faça o conjunto de passos que v ocê faria para olhar o valor da compra e co ntabilizar o valor das prestações.

o valor da compra e co ntabilizar o valor das prestações. Figura 53 . 1. Pegue

Figura 53.

1. Pegue os produtos;

 

2. Olhe o preço dos produtos;

3. Some os preços dos produtos;

4. Divida o resultado da soma do

s

produtos por dois;

5. O resultado da divisão é o valo

r

da prestação.

Lembra do Software

Vamos utilizá-lo para ver essa estrutura?

Pense que você esta precis ando pintar um caminho e o robô vai te ajud ar, então movimente o robô pelo Mapa até o cami nho branco e pinte todo o caminho de preto. Lembre-se de desviar dos obstáculos do caminho !

RoboMIND? Apresentado no Módul o 1?

Mapa Utilizadodefa ult.map

Apresentado no Módul o 1? Mapa Utilizadodefa ult.map Fi gura 54 . RESPOSTA: virarDireita andarFrente(8)

Fi gura 54.

RESPOSTA:

virarDireita andarFrente(8) pintarPreto andarFrente(1) virarEsquerda andarFrente(1) virarDireita andarFrente(2)
virarDireita
andarFrente(8)
pintarPreto
andarFrente(1)
virarEsquerda
andarFrente(1)
virarDireita
andarFrente(2)
virarEsquerda
andarFrente(6)
virarEsquerda
andarFrente(8)
virarDireita
andarFrente(2)
pararPintar
Saiba mais em sobre es te assunto em: http://www.youtube.com/watch?v=71O V3St-Fxs Comandos de Deci são Os
Saiba mais em sobre es te assunto em: http://www.youtube.com/watch?v=71O V3St-Fxs Comandos de Deci são Os
Saiba mais em sobre es te assunto em: http://www.youtube.com/watch?v=71O V3St-Fxs
Saiba mais em sobre es
te assunto em:
http://www.youtube.com/watch?v=71O
V3St-Fxs

Comandos de Deci são

Os comandos de decisão o u desvio fazem parte das técnicas de program ação que conduzem as

estruturas de programas qu e não são totalmente sequenciais. Com as ins truções de SALTO ou

DESVIO pode-se fazer co m que o programa proceda de uma ou out ra maneira, de acordo com as decisões lógicas to madas em função dos dados ou resultados ant eriores.

As principais estruturas de decisão são: se então, senão e caso selecion e.

Se Então

A estrutura de decisão SE

determinada condição for s atisfeita pelo comando então execute determ inado ação. Imagine um algoritmo que verifique a aprovação do aluno, determinad o aluno somente estará aprovado se sua média for maior ou igual a 6.0, veja no exemplo abaixo de como seria.

de um comando, se

ENTÃO normalmente vem acompanhada

INÍCIO Se media >= 6.0 então Aluno Aprovado FIM

Fi gura 55.
Fi gura 55.
Lembrando-se da estrutura apresentada anteriormente com o RoboMIND, Utilizando o mesmo mapa, ajude o robô

Lembrando-se da estrutura apresentada anteriormente com o RoboMIND, Utilizando o mesmo mapa, ajude o robô a pintar de preto o que estiver branco. Usando a condição SE ENTÃO, poderíamos escrever o código da seguinte maneira:

Resposta

virarDireita andarFrente(8) se(brancoFrente){ pintarPreto andarFrente(1) virarEsquerda andarFrente(1) virarDireita
virarDireita
andarFrente(8)
se(brancoFrente){
pintarPreto
andarFrente(1)
virarEsquerda
andarFrente(1)
virarDireita
andarFrente(2)
virarEsquerda
andarFrente(6)
virarEsquerda
andarFrente(8)
virarDireita
}

Senão

A estrutura de decisão SENÃO, funciona exatamente como a estrutura SE ENTÃO, com

apenas uma diferença, caso a condição do SE ENTÃO seja falsa a estrutura SENÃO é

automaticamente executada.

Imagine que você está esperando um ônibus. Veja como seria o algoritmo para essa situação:

Se o ônibus for ao destino desejado entre, senão espere novamente até passar o ônibus que

fará o percurso desejado.

INÍCIO

1. Esperar ônibus

2. Se ônibus certo então

3. Entrar no ônibus

4. Se não esperar o ônibus

FIM

Esperar ônibus 2. Se ônibus certo então 3. Entrar no ônibus 4. Se não esperar o

Figura 56.

Vamos fazer o robô pegar um objeto no mapa abaixo: Figura 57. Use o seguinte

Vamos fazer o robô pegar um objeto no mapa abaixo:

Figura 57.
Figura 57.

Use o seguinte código:

andarTrás(2)

virarDireita se(temObjetoFrente){ pegar }senão{

andarFrente(2)

}

Conseguiu pegar o objeto? Se não conseguiu faça as mudanças necessárias para que ele pegue.

Caso

A estrutura de decisão CASO é utilizada para testar uma única expressão, caso a primeira

opção seja verdadeira, as outras opções não serão testadas.

Vejamos uma situação dessa estrutura:

O dono de uma Loja precisa pagar seus funcionários, o salário pago esta de acordo com a

função de cada um. Sabendo que a loja possui um operador de caixa, um vendedor e um gerente. Sendo que ao operador de caixa deve-se pagar 200, ao vendedor 500 e ao gerente 1000. Dependendo do funcionário o dono da loja deve selecionar a opção e realizar o

pagamento.

Inicio   1. Verificar a função do funcioná rio 2. Caso funcionário operador de c

Inicio

 

1. Verificar a função do funcioná

rio

2. Caso funcionário operador de c

aixa pague 200 ue 500

3.Caso funcionário vendedor pag

4.Caso funcionário gerente pague

1000

5.

Pagamento Realizado

Fim

gerente pague 1000 5. Pagamento Realizado Fim Figu ra 58 . Vamos utilizar as estr uturas

Figu ra 58.

Vamos utilizar as estr uturas de decisão em estruturas mai ores!

Estruturas de Seleção Simples

A estrutura de seleção sim ples é utilizada quando há a necessidade d e testar uma condição antes da execução de um o u mais comandos.

Veja como é simples! Início Se estiver sol então Passo filtro solar! Fim do Se
Veja como é simples!
Início
Se estiver sol então
Passo filtro solar!
Fim do Se

Quando testamos algo, que nesse caso é se está chovendo ou não, nos será retornado como resposta: Verdadei ro ou Falso.

Você consegue cumpr ir a missão do Robô?

Utilizando o RoboMINDte nte concluir a seguinte missão:

Estando no mapa copyLine 1.map você precisa pegar a mina que está do

utilizando os comandos se(

) então{

}.

lado direito do mapa,

Quais os passos para esse algoritmo? Figura 59 . Mapa Utilizad o: copyLine1.map Resposta: andarFrente(1)

Quais os passos para esse algoritmo?

Quais os passos para esse algoritmo? Figura 59 . Mapa Utilizad o: copyLine1.map Resposta: andarFrente(1)  

Figura

59.

Mapa Utilizad o: copyLine1.map Resposta:

andarFrente(1)

 

virarDireita()

andarFrente(9)

se(temObstáculo

Frente()){

pegar()

}

Estrutura de Seleção Composta

A condição que vimos até

elaboradas. A estrutura d e seleção composta é utilizada quando há

dependem da mesma condi ção, uma da condição verdadeira e a outra da condição falsa.

agora é única, mas algumas situações precisa m usar condições mais

duas alternativas que

Como funciona isso? Início Se estiver sol então Eu vou à praia! Senão Fico em
Como funciona isso?
Início
Se estiver sol então
Eu vou à praia!
Senão
Fico em casa!
Fim do Se

Quando testamos algo, n esse caso, se está chovendo ou não, nos

resposta: Verdadeiro ou F also, e a partir da resposta decidir ir ou não a praia.

será retornado como

Sua próxima missão será: No mapa copyLine1.map você precisa pegar a mina que está na

Sua próxima missão será:

No mapa copyLine1.map você precisa pegar a mina que está na parte inferior do mapa do

lado esquerdo, utilizando os comandos se( essa missão?

Você consegue cumprir mais

){

}

senão{

}.

Quais os passos para esse algoritmo?

mais ){ } senão{ }. Quais os passos para esse algoritmo? Figura 60 . Mapa Utilizado:

Figura 60.

Mapa Utilizado: copyLine1.map

Resposta:

virarEsquerda() virarEsquerda() andarFrente(4) se(temObjetoEsquerda()){ virarEsquerda() andarFrente(8) pegar()
virarEsquerda()
virarEsquerda()
andarFrente(4)
se(temObjetoEsquerda()){
virarEsquerda()
andarFrente(8)
pegar()
}senão{
temObjetoDireita()
virarDireita()
andarFrente(5)
pegar()
}

Estruturas de Seleção Encadeada

Se o seu algoritmo precisa testar mais de uma condição, então você pode criar uma estrutura de seleção encadeada e múltipla.

Lembra-se do exemplo ant erior da chuva? Vejamos como ficaria: Início Se estiver sol então

Lembra-se do exemplo ant erior da chuva? Vejamos como ficaria:

Início Se estiver sol então Se tiver dinheiro Eu vou à p Fim do Se Fim do Se

Senão

Fico em casa. Fim do Se

então

raia!

do Se Fim do Se Senão Fico em casa. Fim do Se então raia! Figura 61

Figura 61.

Observe que tínhamos um a condição para ir à praia e agora temos du as, se estiver sol e se estiver com dinheiro. Essa é uma estrutura simples encadeada. Veremos que em alguns al goritmos precisaremos de mais de uma condi ção ao mesmo tempo.

Estrutura de Repetiçã o

As estruturas de repetiç ão possibilitam que o processamento de

algorítmicas venha a ser

envolvida, para que haja a resolução de problemas.

algumas instruções

executadas repetidas vezes, segundo a n ecessidade da lógica

Figura 62.
Figura 62.

que realizamos para

aumentar o volume da televisão, lo go nos deparamos com os seguintes passos: pegue o contr ole, encontre o botão

clique, clique, até o

Quando pensamos nos passos

de aumentar o volume, clique, volume ser aumentado.

Veja que os passos se rep etiram para poder executar a tarefa de aume ntar o volume. A este tipo de estrutura chamamo s de estrutura de repetição. Essas estruturas permitem que uma ou

mais instruções sejam e xecutadas um número definido de veze s, ou enquanto uma determinada

mais instruções sejam e xecutadas um número definido de veze s, ou enquanto uma determinada condição não é satisfeita.

Vejamos como essa estrutura fu nciona.
Vejamos como essa estrutura fu
nciona.

Va mos tomar um café? Pri meiro precisamos prepará-lo!

Quais seriam os passos desse algo ritmo?

1.Colocar o açúcar na xíc

ara

2.Colocar o café na xícar

a

3.

Colocar a água quente

na xícara

4. Mexer

5. Mexer

6.

Mexer

Mexer 8. Mexer

7.

9.

Mexer

10. Prove se doce 11.Tomar o café

7. 9. Mexer 10. Prove se doce 11.Tomar o café Figura 63 . Este poderia ser
7. 9. Mexer 10. Prove se doce 11.Tomar o café Figura 63 . Este poderia ser

Figura 63.

Este poderia ser reesc rito, de forma melhorada, como segu e abaixo:

1. Colocar o açú

car na xícara;

2. Colocar o café

na xícara;

3. Colocar água

quente; doce);

Repita (até ficar

4.

Mexer;

 

FimRepita

5.

Tomar o café.

Em algoritmos e programa s muitas vezes existem situações em que o processamento de um

Em algoritmos e programa s muitas vezes existem situações em que o processamento de um

valor uma única vez, não

utilizar uma Estrutura de Repetição.

é suficiente para resolver o problema. Quan do isto ocorre, deve-se

Tipos de estrutura de repetição

A estrutura Condicio nal

condição de repetição.

Estas são utilizadas quan do não se sabe de antemão quantas veze s deve-se executar as

instruções do bloco de repe tição.

A estrutura condicional re pete um ou mais comandos até satisfazer a

Estrutura condicion al com teste de repetição no inicio ENQUAN TO/FAÇA Estrutura condicion al com teste de repetição no final REPITA/A TÉ

Estrutura condicio nal Enquanto/Faça

O que seria essa estru tura?

Os comandos se repetem e nquanto a condição não se torna falsa.

se repetem e nquanto a condição não se torna falsa. Vejamos como essa estrutura funciona. Imagine
se repetem e nquanto a condição não se torna falsa. Vejamos como essa estrutura funciona. Imagine

Vejamos como essa estrutura funciona.

Vejamos como essa estrutura funciona.

Imagine que você precisa entrar no banco, e a porta está fechada, voc ê precisa pressionar o botão que abre a porta, par a ela abrir e você entrar.

Vejamos o algoritmo para entrar: Figura 64 . 1. Vá até a porta; 2. Pressione

Vejamos o algoritmo para entrar:

Vejamos o algoritmo para entrar: Figura 64 . 1. Vá até a porta; 2. Pressione o

Figura 64.

1. Vá até a porta;

2. Pressione o botão que abre a porto

3. Enquanto a porta não estiver aberta faça pressione o botão

4. Quando a porta estiver aberta, entre.

O comando 2 é repetido indefinidamente até o a porta ser aberta. Quando nos deparamos com tal situação, a qual não sabe o número de vezes que repetiremos um determinado comando, utilizamos a estrutura de repetição condicional. Observe que a pessoa só entra no banco, após o valor fornecido corresponder a porta aberta, ou seja, enquanto o usuário não apertar o botão tempo suficiente a porta estará fechada e será solicitado que ele continue com o botão pressionado. Essa é uma das características desse comando, pois, a condição que testa se o usuário realizou a ação esperada acontece no inicio, neste caso seria a condição, Enquanto (porta fechada) faça, aperte o botão. Enquanto essa condição não for alcançada o bloco se repete.

Utilizando o software RoboMIND.

o bloco se repete. ∑ Utilizando o software RoboMIND. Figura 65 . Agora você precisa trabalhar

Figura 65.

Agora você precisa trabalhar duro, estamos com um monte de minas que precisam ser levadas para o outro lado do mapa. Utilizando o comando repetirEnquanto( ){ }, com a ajuda do robô faça com que ele passe as minas para o outro lado do mapa, até que quando não haja mais minas no caminho.

Mapa utilizadochangeBelt12.map

Resposta: repetirEnquanto (tem o pegar bjeto) { andarSul(0) soltar andarLeste(1) andarNorte(0) }

Resposta:

repetirEnquanto (tem o pegar

bjeto) {

andarSul(0)

soltar

andarLeste(1)

andarNorte(0)

}

andarSul(0)

Estrutura condicio nal Repita/Até

O que seria essa estru tura?

A

diferença entre a estrutur a ENQUANTO e a estrutura REPITA é qu e na estrutura REPITA

os

comandos serão repetido s pelo menos uma vez, já que a condição se encontra no final.

Vejamos como essa estr funciona. utura J oão está com a porta de casa quebrada
Vejamos como essa estr
funciona.
utura
J oão está com a porta de casa quebrada e pr ecisa concertá-la, para
i sso, precisa apertar um parafuso.
1. Pegar o parafuso
2. Colocar parafuso na porta
3. Repita
4. Apertar parafuso
5. Até que parafuso apertado
6. Porta concertada
Figura 66.
Figura 67.

Veja que nesta condição v ocê repete o comando “apertar parafuso” at é que a condição seja verdadeira, no caso, até “p arafuso apertado”.

Utilizando o softwa re ROBOMIND.

Você precisa fazer com q ue o Robô encontre o local branco. Para is so,

Você precisa fazer com q ue o Robô encontre o local branco. Para is so, utilize o comando

repita{

direita e andar para trás, se não o robô deve andar para frente. Mapa utilizado findspot.i robo

obstáculos a esquerda e não estiver branco , o robô deve virar a

},

se não houver

não estiver branco , o robô deve virar a }, se não houver Figura 68 .

Figura 68.

repetir{ se(não temObstáculoEsquerda e brancoEsquerda){ virarDireita

andarTrás(1)

fim } senão{

andarFrente(1)

}

}

Estrutura de Repet ição Contada

A estrutura “contada” rep ete um número contado (pré-definido) de v ezes os comandos. As

mesmas são utilizadas qu ando se sabe previamente quantas vezes instruções do bloco de repe tição.

devem-se executar as

Estrutura contada Para/Faça

O que seria essa estru tura?

Quando pretende se repetir uma determinada condição uma quantidade de vezes determinada, utiliza-se este tipo de estrut ura.

Vejamos como essa es funciona.
Vejamos como essa es
funciona.

trutura

uma quantidade de vezes determinada, utiliza-se este tipo de estrut ura. Vejamos como essa es funciona.
Flávio quer um algoritmo q ue escreve a frase “sou brasileiro” cinco vez es. Figura

Flávio quer um algoritmo q ue escreve a frase “sou brasileiro” cinco vez es.

Figura 69.
Figura 69.

Inicie a Variável Contadora em 1, ela fará o controle de quantas vezes o bloco de instrução será repetido, n o caso, 5 vezes. Para Variável Contadora recebendo 1 at é repetir 5 vezes faça "sou brasileiro" Quando a variável contadora chegar a cinc o, termine o processo, o qual saíra cinco vezes o nome "sou brasi leiro".

Observe que nessa estrut ura sabe-se a quantidade de vezes que p retendemos repetir a

operação, no caso 5. E te mos uma variável para contar quantas vezes

sendo repetida, no caso “V ariável Contadora”. Então quando sabemos a quantidade de vezes que iremos repetir um dete rminado comando utilizamos a estrutura de repetição contadora.

aquela operação esta

Você consegue real izar mais uma missão?

Você precisa delimitar u ma área em forma de quadrado, com o c omando repita( ){ }, construa a área em forma d e quadrado com as bordas brancas utilizando o pincel.

d e quadrado com as bordas brancas utilizando o pincel. Figura 70 . Mapa utilizado d

Figura 70.

Mapa utilizado d efault.map

Respos

ta:

pintarBranc

o

repetir(4) {

andarFrente

(2)

virarDireita

}

pararPintar

5 Jogos e So ftwares light-Bot Figura 71. Jogo online no qual você alcance o
5
5

Jogos e So ftwares

light-Bot

Figura 71.
Figura 71.

Jogo online no qual você alcance o objetivo proposto

de passos para que o robô c hegue ao destino final e acenda sua luz.

pode controlar um robô através de divers as ações para que ele e acenda a luz em sua cabeça. Para isso, é n ecessário um conjunto

Para controlar o robô atrib ua os movimentos que serão executados po r ele. Use a lógica e o conceito de algoritmo da do que ele tem uma tarefa a ser realizad a e necessita de uma sequência detalhada de pas sos para tal.

Atenção! Existe uma quantidade limitada de ações que ele pode realizar. Conhecendo o Jogo Ícone
Atenção! Existe uma quantidade limitada de ações que ele pode realizar.
Atenção! Existe uma quantidade
limitada de ações que ele pode
realizar.

Conhecendo o Jogo

Ícone Apresentar Pontuação
Ícone Apresentar
Pontuação
realizar. Conhecendo o Jogo Ícone Apresentar Pontuação Figura 72: Tela início jogo Light-bot. Desafie sua mente
realizar. Conhecendo o Jogo Ícone Apresentar Pontuação Figura 72: Tela início jogo Light-bot. Desafie sua mente

Figura 72:Tela início jogo Light-bot.

Desafie sua mente descobrindo os passos que o robô necessita para chegar ao seu objetivo
Desafie sua mente
descobrindo os passos que o
robô necessita para chegar ao
seu objetivo no Ícone Níveis
de Usuário. É possível
acessar os mais diversos
níveis do jogo.
Tutoriais para conhecer como funciona o jogo.
Tutoriais para conhecer como
funciona o jogo.
diversos níveis do jogo. Tutoriais para conhecer como funciona o jogo. Nível Editor para criar desafios
Nível Editor para criar desafios para o robô.
Nível Editor para criar
desafios para o robô.
1. Principais funções Aqui se coloca os comandos para o robô andar e chegar até

1. Principais funções

Aqui se coloca os comandos para o robô andar e chegar até ao quadrado azul
Aqui se coloca os
comandos para o robô
andar e chegar até ao
quadrado azul e acender
a luz.
andar e chegar até ao quadrado azul e acender a luz. Figura 73: Exemplo atividade Nível
andar e chegar até ao quadrado azul e acender a luz. Figura 73: Exemplo atividade Nível

Figura 73: Exemplo atividade Nível Básico.

Perceba que ele necessitou de três passos para acender a luz.
Perceba que ele
necessitou de três
passos para acender a
luz.
que ele necessitou de três passos para acender a luz. Figura 74: Exemplo atividade Nível Básico

Figura 74: Exemplo atividade Nível Básico

A função é colocada aqui, pois, têm disponíveis apenas 16 comandos e são muitos passos
A função é colocada
aqui, pois, têm
disponíveis apenas 16
comandos e são muitos
passos necessários para
o robô alcançar todos os
pontos apontados.

2.Utilizando Função nos desafios mais complexos

apontados. 2.Utilizando Função nos desafios mais complexos Figura 75: Exemplo atividade Nível Básico Como os comandos
apontados. 2.Utilizando Função nos desafios mais complexos Figura 75: Exemplo atividade Nível Básico Como os comandos

Figura 75:Exemplo atividade Nível Básico

Como os comandos são limitados, a função é usada quando o robô executa comandos repetidos.
Como os comandos são
limitados, a função é
usada quando o robô
executa comandos
repetidos.
Você está preparado para criar seu jogo? Após salvar o jogo criado é possível carregar

Você está preparado para criar seu jogo?

Após salvar o jogo criado é possível carregar o mesmo por meio desta ferramenta. Ferramenta
Após salvar o jogo criado
é possível carregar o
mesmo por meio desta
ferramenta.
Ferramenta para
2.
Nível Editor
limpar os
obstáculos.
Ferramenta para
adicionar os
obstáculos ao
caminho do robô.
Ferramenta para
colocar o local de
chegada do robô
para acender.
Figura 76: Nível Editor
Ferramenta para testar o
jogo construído.
Espaço para os comandos
necessários à realização da
tarefa.
Scratch Figura 77 . É uma linguagem de programação desenvolvida por LifelongKindergartenGroup no Media Lab,

Scratch

Scratch Figura 77 . É uma linguagem de programação desenvolvida por LifelongKindergartenGroup no Media Lab, MIT(com

Figura 77.

É uma linguagem de programação desenvolvida por LifelongKindergartenGroup no Media Lab, MIT(com financiamento da National Science Foundation, Intel Foundation, Nokia e do consórcio de pesquisa do MIT Media Lab). Este aplicativo possibilita a criação de estórias interativas, jogos e animações bem como o compartilhamento das criações na Web. Tudo pode ser feito a partir de comandos que devem ser agrupados de modo lógico.

Conhecendo o Software

A tela inicial do Scratch é composta por (A) uma área que apresenta e possibilita a escolha dos grupos de comandos desta linguagem de programação, (B) uma área edição que possibilita a criação do projeto, ou a programação de eventos (ou “scripts”), (C) uma área de definição dos objetos (ou “sprites”) e cenários (ou “palcos”) que integram um dado projeto, (D) uma área que lista miniaturas dos “sprites” utilizados no projeto, (E) uma área de apresentação, que viabiliza a execução do projeto criado. Assim a criação de um projeto no Scratch requer a escolha de comandos da linguagem de programação, a edição de um projeto que envolve a programação utilizando elementos gráficos para compor o “palco” da estória, a definição de scripts ou “rotinas de ações” a partir do uso de comandos, especificação de parâmetros, sprites (objetos), trajes e sons.

Figura 78 . Nomesdoscampos da Tela Inicial Vamos conhecer agora os nomes dos campos, abas,
Figura 78 . Nomesdoscampos da Tela Inicial Vamos conhecer agora os nomes dos campos, abas,

Figura 78.

Nomesdoscampos da Tela Inicial

Vamos conhecer agora os nomes dos campos, abas, botões da Tela Inicial para facilitar o uso deste aplicativo. Nesta figura inicial aparece um objeto (“sprite”) com a imagem do gato que pode ser movimentado na tela a partir da utilização de alguns comandos desta linguagem de programação.

do gato que pode ser movimentado na tela a partir da utilização de alguns comandos desta
Figura 79 . 1) Categoria de comandos: Movimento, Aparência, Som, Caneta, Controle, Sensores, Operadores, Variáveis;

Figura 79.

1) Categoria de comandos: Movimento, Aparência, Som, Caneta, Controle, Sensores, Operadores, Variáveis; 2) Bloco de comandos: ao escolher uma categoria de comando temos várias opções de comandos; 3) Botões de atalho: selecionar idioma, salvar este projeto e compartilhar este projeto; 4) Abas para opções comandos, trajes e sons; 5) Área de edição (depende da aba selecionada – item anterior (4)); 6) Botões para editar o objeto no palco: Duplicar, Apagar, Crescer objeto e Encolher objeto. 7) Botão para alterar o tamanho de visualização do palco; 8) Botões para iniciar(bandeira verde) e parar o script(circulo vermelho); 9) Palco: local onde visualizamos o Sprite ; 10) Área que disponibiliza a seleção/criação dos Sprites e do palco.

Primeiro Movimento no Scratch

Agora vamos iniciar um projeto que apenas desloca o Gato (“sprite) na tela (“palco”). Ao

apenas desloca o Gato (“sprite) na tela (“palco”). Ao abrir o Scratch já aparece selecionada na

abrir o Scratch já aparece selecionada na opção no campo (1) –Categoria de comandos. Utilizando o cursor do mouse arraste um dos comandos que está no campo (2) – Bloco de comandos para a área de Edição (campo 5). Clique e segure com o botão esquerdo

Edição (campo 5). Clique e segure com o botão esquerdo do mouse no comando Solte o

do mouse no comando

Solte o botão direito. Você obterá a seguinte imagem:

. Arraste para o Campo (5) – Área de Edição.

Figura 80 . Para executar este comando clique duas vezes com o botão esquerdo domouse
Figura 80 . Para executar este comando clique duas vezes com o botão esquerdo domouse

Figura 80.

Para executar este comando clique duas vezes com o botão esquerdo domouse sob o botão que você acabou de arrastar. Veja que o Objeto (Gato) se mover para direita no campo (9) – Palco. Neste exemplo estamos programando o deslocamento do Objeto (Gato) 10 passos para direita, ou seja, o parâmetro utilizado no comando “mova” foi o número 10. Experimente também outros comandos da categoria “movimento” que consideram as coordenadas cartesianas para referenciar a posição e o deslocamento de objetos na tela.

referenciar a posição e o deslocamento de objetos na tela. Figura 81 . Outros comandos da

Figura 81.

Outros comandos da categoria “movimento” permitem GIRAR os objetos na tela a partir da especificação de parâmetros que variam de 0 a 360 graus, sentido horário e anti-horário. Experimente!

Figura 82 . Descrição dos Blocos de Comandos do Scratch Os blocos de comandos do
Figura 82 . Descrição dos Blocos de Comandos do Scratch Os blocos de comandos do

Figura 82.

Descrição dos Blocos de Comandos do Scratch

Os blocos de comandos do Scratch estão dispostos em oito categorias (Movimento, Aparência, Som, Caneta, Controle, Sensores, Operadores, Variáveis), cada uma com sua cor específica.

Aparência, Som, Caneta, Controle, Sensores, Operadores, Variáveis), cada uma com sua cor específica. Figura 83 .

Figura 83.

Figura 84 . Figura 85 .
Figura 84 . Figura 85 .

Figura 84.

Figura 84 . Figura 85 .

Figura 85.

Figura 86 . Figura 87 .
Figura 86 . Figura 87 .

Figura 86.

Figura 86 . Figura 87 .

Figura 87.

Figura 88 . Figura 89 .
Figura 88 . Figura 89 .

Figura 88.

Figura 88 . Figura 89 .

Figura 89.

Figura 90 . Figura 91 .
Figura 90 . Figura 91 .

Figura 90.

Figura 90 . Figura 91 .

Figura 91.

Figura 92 . Figura 93 . Saiba Ma is… Em: http://portals me.prefeitura.sp.gov.br/Projetos/ie/Documentos /scratch.pdf
Figura 92 . Figura 93 . Saiba Ma is… Em: http://portals me.prefeitura.sp.gov.br/Projetos/ie/Documentos /scratch.pdf

Figura 92.

Figura 93.

Figura 92 . Figura 93 . Saiba Ma is… Em: http://portals me.prefeitura.sp.gov.br/Projetos/ie/Documentos /scratch.pdf
Figura 92 . Figura 93 . Saiba Ma is… Em: http://portals me.prefeitura.sp.gov.br/Projetos/ie/Documentos /scratch.pdf

Saiba Ma is…

Em: http://portals

me.prefeitura.sp.gov.br/Projetos/ie/Documentos /scratch.pdf

RoboMIND Figura 94 . RoboMIND é uma excelen te ferramenta para a introdução à lógica

RoboMIND

RoboMIND Figura 94 . RoboMIND é uma excelen te ferramenta para a introdução à lógica de

Figura 94.

RoboMIND é uma excelen te ferramenta para a introdução à lógica de programação, ciência

e mapas podem ser

facilmente ajustadas para

se relacionar com os desafios encontrad os no cotidiano e na

da computação, pensame nto computacional e robótica. Exercícios

indústria. Ele foidesenvolv ido com a ideia de ligar a teoria com aplicaçõ es.

O ambiente de program ação oferece alguns fundamentos da lóg ica e da ciência da

computação que permitem

simular e criar soluções para praticamente qualquer desafio. No

software, você controla u m pequeno robô utilizando linhas de coman do, baseadas em uma

linguagem de programação própria do software, bem simplificada.

Figura 95.
Figura 95.

Olá! Sou o RoboMIND

!

Estou pronto para execu que me forem solicitadas.

tar todas as instruções

Então! Vamos aprender instruções?

como me passar essas

Conhecendo o Ambiente Menu de arquivos Painel de escrita Painel Correr Mensagem do painel Figura

Conhecendo o Ambiente

Menu de arquivos

Painel de escrita

Painel Correr

Menu de arquivos Painel de escrita Painel Correr Mensagem do painel Figura 96 . Painel Mundo

Mensagem do painel

Figura 96.

Painel Mundo

Painel de escrita

Nesta área de texto, você pode escrever a sua tarefa na forma de um script que o robô irá executar.

Painel Correr

Depois de ter decidido qual instruções orobôdeve executar, é neste ícone que você deve clicar para o robô começar a andar. Também é possível ajustar a velocidade na qual o robô opera

Mensagem do painel

Em caso, do script “linha de código” não ser reconhecido pelo programa, você receberá erros de compilação aqui. É também o lugar onde o robô pode notificar determinados eventos.

Painel Mundo

Aqui você vê o estado atual do robô em seu ambiente. Este é o ambiente inteiro em que o robô vive, vamos chamá-lo de mundo.

Ícones de EDITAR (Desfazer, Refazer, Colar, Recortar, Copiar, Selecionar tudo). Os ícones DESFAZER e REFAZER

Ícones de EDITAR (Desfazer, Refazer, Colar, Recortar, Copiar, Selecionar tudo).

Os ícones DESFAZER e REFAZER permite que o usuário desfaça ou refaça sua linha de
Os ícones DESFAZER e
REFAZER permite que o
usuário desfaça ou refaça
sua linha de código.
COLAR – Cola o texto no código fonte; RECORTAR – Recorta o código fonte selecionado;
COLAR – Cola o texto no
código fonte;
RECORTAR – Recorta o
código fonte selecionado;
COPIAR – Copia o código
fonte selecionado;
SELECIONAR TUDO
Seleciona todo o código
fonte;

Figura 97.

Ícone (Localizar e substituir)

LOCALIZAR – Localiza um texto no código fonte; SUBISTITUIR – Substitui um texto no código
LOCALIZAR – Localiza
um texto no código fonte;
SUBISTITUIR – Substitui
um texto no código fonte;

Figura 98.

Ícones de EXIBIR (Mostrar grade, Mostrar Radar, Acompanha Robô, Captura tela). Figura 99 . MOSTRAR

Ícones de EXIBIR (Mostrar grade, Mostrar Radar, Acompanha Robô, Captura tela).

grade, Mostrar Radar, Acompanha Robô, Captura tela). Figura 99 . MOSTRAR GRADE – Mostra uma grade

Figura 99.

MOSTRAR GRADE – Mostra uma grade para orientar a localização do robô; MOSTRAR RADAR –
MOSTRAR GRADE – Mostra uma
grade para orientar a localização do
robô;
MOSTRAR RADAR – Mostra um
pequeno mapa do mundo;
ACOMPANHA ROBÔ – A câmera
acompanha o robô no mapa;
CAPTURA TELA– Cria uma cópia da
tela atual;

Ícones (Executar, Avançar, Pausar, Parar)

da tela atual; Ícones (Executar, Avançar, Pausar, Parar) Figura 100 . EXECUTAR - Executando script; AVANÇAR

Figura 100.

EXECUTAR - Executando script; AVANÇAR – Executa o próximo comando; PAUSAR – Interrompe a execução
EXECUTAR - Executando script;
AVANÇAR – Executa o próximo
comando;
PAUSAR – Interrompe a
execução do script, possibilitando
a continuação;
PARAR -Interrompe a execução
do script, não possibilitando a
continuação.
Ícone de Mapas Figura 101. No ícone representado por um globo, na aba de cima

Ícone de Mapas

Figura 101.
Figura 101.
No ícone representado por um globo, na aba de cima do RoboMIND, você poderá escolher
No ícone representado por um globo, na aba de cima do
RoboMIND, você poderá escolher o ambiente “mundo” no qual
quer movimentar o seu robô . Ao clicar nesse ícone, abrirá uma
janela na qual haverá vários ambientes diferentes, clique no
ambiente desejado, e o robô mudará o ambiente.

Alguns ambientes disponíveis no RoboMIND

o ambiente. Alguns ambientes disponíveis no RoboMIND Figura 102 : Castle.mapChambers.map. Figura 103 : NOME DO

Figura 102: Castle.mapChambers.map.

o ambiente. Alguns ambientes disponíveis no RoboMIND Figura 102 : Castle.mapChambers.map. Figura 103 : NOME DO

Figura 103: NOME DO MAPA.

F i g u r a 1 0 4 : C o p y L
F i g u r a 1 0 4 : C o p y L

Figura 104: CopyLine1.map.

Figura 105: ChangeBelt.map.

y L i n e 1 . m a p . Figura 105 : ChangeBelt.map. Figura

Figura 106: FindSpot1.map.

m a p . Figura 105 : ChangeBelt.map. Figura 106 : FindSpot1.map. Figura 107 : Maze1.map.

Figura 107: Maze1.map.

m a p . Figura 105 : ChangeBelt.map. Figura 106 : FindSpot1.map. Figura 107 : Maze1.map.

Figura 108: PassBeacons.map.

Instruções Básicas O robô pode executar um conjunto de instruções que lhe permite escrever um

Instruções Básicas

O robô pode executar um conjunto de instruções que lhe permite escrever um script e programar para que ele possa realizar diferentes tarefas. As instruções básicas dos robôs são:

tarefas. As instruções básicas dos robôs são: Figura 109 . Mover andarFrente (n) – Andar n

Figura 109.

Mover

andarFrente (n) – Andar n passos para frenteAs instruções básicas dos robôs são: Figura 109 . Mover virarEsquerda - Vira 90 graus para

virarEsquerda - Vira 90 graus para a esquerda

andarSul (n) – Vira para o sul e anda n passos para frente

andarLeste (n) – Vira para o leste e anda n passos para frente

andarTrás (n) - Andar n passos para trás(n) – Vira para o leste e anda n passos para frente virarDireita – Vira 90

virarDireita – Vira 90 graus para a direitapara frente andarTrás (n) - Andar n passos para trás andarNorte (n) – Vira para o

andarNorte (n) – Vira para o norte e anda n passos para frentepara trás virarDireita – Vira 90 graus para a direita Pintar pintarBranco - Pega o pincel

Pintar

pintarBranco - Pega o pincel e pinta o chão de branco(n) – Vira para o norte e anda n passos para frente Pintar pintatPreto pararPintar -

pintatPreto

pararPintar

- Pegar o pincel e pintar o chão de pretopintarBranco - Pega o pincel e pinta o chão de branco pintatPreto pararPintar - Para de

- Para de pintar e esconde o pincel- Pega o pincel e pinta o chão de branco pintatPreto pararPintar - Pegar o pincel

Pegar Pegar-Pega o objeto em frente do robô Soltar-Solta o objeto em rente ao robô

Pegar

Pegar-Pega o objeto em frente do robô Soltar-Solta o objeto em rente ao robô
Pegar-Pega o objeto em frente do robô Soltar-Solta o objeto em rente ao robô

Pegar-Pega o objeto em frente do robô

Soltar-Solta o objeto em rente ao robô

Ver

do robô Soltar-Solta o objeto em rente ao robô Ver E no programa, onde posso encontrar
E no programa, onde posso encontrar essas instruções, para movimentar o robô?
E no programa, onde posso
encontrar essas instruções, para
movimentar o robô?
Clique no ícone INSERIR, MOVER, e escolha a instrução que você deseja que o robô
Clique no ícone INSERIR, MOVER, e escolha a instrução que você deseja que o robô
Clique no ícone
INSERIR, MOVER, e
escolha a instrução
que você deseja que
o robô execute!

Figura 110.

Instruções Avançadas

Além dos comandos básicos do robô, você pode utilizar algumas instruções que permitem a

você programar um comportamento mais sofisticado para seu robô. Vejam, quais são as

instruções:

Condições Se ( ) { } Se ( ) { } senão { } Se
Condições
Se ( ) {
}
Se ( ) {
} senão {
}
Se ( )
{
} senão se ( ) { }
Se ( )
}senão{ }
{
} senão se ( ) {

Figura 111.

Laços repetir (3) { } repetir { } repetirEnquanto ( ){ } sair
Laços
repetir (3) {
}
repetir {
}
repetirEnquanto ( ){ }
sair

Figura 112.

Referências ARAÚJO, E. C. Lógica de Programação. Cuiabá: EdUFMT, 2009. Blog do Redu. Disponível em:
Referências ARAÚJO, E. C. Lógica de Programação. Cuiabá: EdUFMT, 2009. Blog do Redu. Disponível em:

Referências

ARAÚJO, E. C. Lógica de Programação. Cuiabá: EdUFMT, 2009.

Blog do Redu. Disponível em: <http://ticseinformacao.blogspot.com.br/2011/04/rede-social- educacional.html>. Acesso em: 10 de Setembro de 2013.

Estrutura

<http://cae.ucb.br/conteudo/programar/algoritmobsi/new_estruturadecontrolebsi.html>. Acesso em: 10 set. 2013.

de

Controle.

Disponível

em:

Estrutura de repetição. Disponível em: <http://www.slideshare.net/edvanmateo10/50978145- algoritmosexerciciosresolvidos>. Acesso em 10 set. 2013.

Estrutura Sequencial.

Sequencial>. Acesso em: 10 set. 2013.

Disponível

em:

<http://pt.scribd.com/doc/50982387/18/Estrutura-

FARRER, H. et al., Algoritmos Estruturados, Editora Guanabara, 1989.

FORBELLONE, A. L. V., EBERSPÄCHER, H. F.; Lógica de Programação – A Construção de Algoritmos e Estrutura de Dados, Makron Books, 2000.

FORBELLONE, A. L. V.; EBERSPACHER, H. F. Lógica de Programação: a construção de algoritmos e estruturas de dados. 3 ed. São Paulo: Pearson/Prentice, 2005.

Light-Bot.

Acesso em: 02 de Outubro de 2013.

Disponível

em:

<http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/>.

MALAGUTTI, P. L. A. Inteligência Artificial no Ensino: construção de computadores que se comportam como humanos. São Carlos: EdUFSCar, 2008.

McCONNELL, S., Code Complete – A Pratical Handbook of Software Construction, Microsoft Press, 1993.

MEDINA, M. Algoritmos e Programação: teoria e prática. São Paulo: Novatec Editora, 2006.

O que é o RoboMIND FURB. Disponível em:

<http://robolab.inf.furb.br/index.php?option=com_content&view=article&id=1&Itemid=3>

Acesso em: 01 de Outubro de 2013.

PAIVA, S. Introdução à Programação: do algoritmo às linguagens atuais. Rio de Janeiro: Ciência Moderna,

PAIVA, S. Introdução à Programação: do algoritmo às linguagens atuais. Rio de Janeiro:

Ciência Moderna, 2008.

Rede Social Educacional: Redu. Disponível em: <http://blog.redu.com.br/>. Acesso em: 10 de Setembro de 2013.

RoboMIND. Disponível

Acesso em: 01 de Outubro de 2013.

em:

<http://www.baixaki.com.br/download/RoboMIND.htm>.

SALVETTI, D. D. e BARBOSA, L. M., Algoritmos, Makron Books, 1998.

Referências das Figuras

Figura 1: http://redu.com.br/

Figura 2: http://redu.com.br/

Figura 3: http://redu.com.br/

Figura 4: http://redu.com.br/

Figura 5: http://redu.com.br/

Figura 6: http://redu.com.br/

Figura 7: http://redu.com.br/

Figura 8: http://redu.com.br/

Figura 9: http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/

Figura 10: http://www.baixaki.com.br/download/robomind.htm

Figura 11: http://scratch.mit.edu/

Figura 12: http://professorphm.blogspot.com.br/2013/08/introducao-logica-de- programacao.html

Figura 13: http://www.canstockphoto.com.br/um-madeira-gaveta-12532433.html

Figura 14: http://inorbt.com/category/download/desenho/

Figura 15: http://www.redejovem.com/2009/05/19/a-matematica-de-deus-1-2-3/

Figura 16: http://jornaloexpresso.files.wordpress.com/2011/05/homer-louco.gif

Figura 17: http://www.revistadigital.com.br/2012/01/nova-economia-aumenta-risco-de- estresse/

Figura 18: http://pt.dreamstime.com/foto-de-stock-royalty-free-ingredientes-doces-para-o- bolo-image23078415 Figura 19:

Figura 18: http://pt.dreamstime.com/foto-de-stock-royalty-free-ingredientes-doces-para-o-

bolo-image23078415

Figura 19: http://www.5asec.com.br/blog/wp-content/uploads/2012/08/bolo_chocolate.jpg

Figura 20: http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/

Figura 21: http://canelada.com.br/palmeiras/alguma-duvida/

Figura 22: MEDINA, M. Algoritmos e Programação: teoria e prática. São Paulo: Novatec Editora, 2006. Figura 23: http://www.hypeness.com.br/2012/02/video-mostra-o-melhor-manual-de-celular- ja-criado-ate-agora/ Figura 24: http://www.w3-d.com/guia-manual-usuario/manual-instrucao.asp Figura 25: http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/

Figura 26: http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/

Figura 27: ttp://www.fpqsystem.com.br/osof4.1/Image%20Gallery/

Figura 28: http://laisdedeus.blogspot.com.br/

Figura 29: http://1.bp.blogspot.com/-

pu59w3V4yGo/Tb6_fwNlFTI/AAAAAAAAAA0/IjLRbOOSm5o/s1600/computador%2B2.j

pg

Figura 30: MEDINA, M. Algoritmos e Programação: teoria e prática. São Paulo: Novatec Editora, 2006. Figura 31: http://www.dicasdeprogramacao.com.br/tipos-de-dados-primitivos/

Figura 32: Windows 7 Microsoft word 2010

Figura 33: Windows 7 Microsoft word 2010

Figura 34: Windows 7 Microsoft Word 2010

Figura 35: http://jornalavem.files.wordpress.com/2008/03/clip-image0022.jpg

Figura 36: http://www.somatematica.com.br/fundam/operacoes/Image3.gif

Figura 37: http://tipodafonte.wordpress.com/2012/01/31/caractere-fonte-tipo-familia-e-o-que/

Figura 38: http://ztop.com.br/ligadesliga-seu-eletronico-precisa-de-mais-um-botao/

Figura 39: Windows 7 Microsoft Word 2010

Figura 40: Windows 7 Microsoft Word 2010

Figura 41: www.caoscarioca.com.br

Figura 42: www.caoscarioca.com.br

Figura 43: www.sbsoutdoor.com.br Figura 44: http://www.slideshare.net/LuizAugustoMacdoMorais/aula-6-constantes-e-variveis

Figura 43: www.sbsoutdoor.com.br

Figura 44: http://www.slideshare.net/LuizAugustoMacdoMorais/aula-6-constantes-e-variveis

Figura 45: Windows 7 Microsoft Word 2010

Figura 46: Windows 7 Microsoft Word 2010

Figura 47: http://www.markimicrowave.com/blog/2010/03/generation-pi/

Figura 48: http://www.slideshare.net/LuizAugustoMacdoMorais/aula-6-constantes-e-variveis

Figura 49: Windows 7 Microsoft Word 2010

Figura 50: Windows 7 Microsoft Word 2010

Figura 51: http://www.ambiente.pascal.nom.br/Capitulo6/Cap6Tutorial1.html

Figura 52: http://www.fotosearch.com.br/IMZ171/tow0030/

Figura 53: http://pt.dreamstime.com/imagem-de-stock-royalty-free-desenho-dos-desenhos-

animados-de-uma-compra-da-mulher-image20089476

Figura 54: Mapa do RoboMinddefault.map

Figura 55: http://emjoaodedeus.blogspot.com.br/2012/02/alunos-aprovados-colegios- federais.html

Figura 56: http://pt.clipartlogo.com/premium/detail/lot-of-children-going-up-on-

the_99786482.html

Figura 57: Mapa do RoboMinddefault.map

Figura 58: Mapa do RoboMindcopyLine1.map

Figura 59: Mapa do RoboMindcopyLine1.map

Figura 60: Mapa do RoboMindcopyLine1.map

Figura 61: http://moodle.progdan.com/course/index.php?categoryid=8

Figura 62:http://pt.clipartlogo.com/premium/detail/watching-tv-vector_35886853.html

Figura 63:http://www.canstockphoto.com.br/caricatura-homem-bebendo-caf%C3%A9-

11591820.html

Figura 64:http://www.fotosearch.com.br/GLW127/gwil30624/

Figura 65: Mapa do RoboMindChangeBelt12.map

Figura 66:http://trokatintasnews.blogspot.com.br/2011_05_01_archive.html

Figura 68: Mapa do RoboMindfindspot.irobo Figura 69:

Figura 68: Mapa do RoboMindfindspot.irobo

Figura 69: http://galeria.colorir.com/desportos/futebol/jogar-futebol-pintado-por-felipe-

15078.html

Figura 70: Mapa do RoboMinddefault.map

Figura 71: http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/

Figura 72: http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/

Figura 73: http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/

Figura 74: http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/

Figura 75: http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/

Figura 76: http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/

Figura 77: http://scratch-kids.en.softonic.com/

Figura 78: http://scratch-kids.en.softonic.com/

Figura 79: http://scratch-kids.en.softonic.com/

Figura 80: http://scratch-kids.en.softonic.com/

Figura 81: http://scratch-kids.en.softonic.com/

Figura 82: http://scratch-kids.en.softonic.com/

Figura 83: http://scratch-kids.en.softonic.com/

Figura 84: http://scratch-kids.en.softonic.com/

Figura 85: http://scratch-kids.en.softonic.com/

Figura 86: http://scratch-kids.en.softonic.com/

Figura 87: http://scratch-kids.en.softonic.com/

Figura 88: http://scratch-kids.en.softonic.com/

Figura 89: http://scratch-kids.en.softonic.com/

Figura 90: http://scratch-kids.en.softonic.com/

Figura 91: http://scratch-kids.en.softonic.com/

Figura 92: http://scratch-kids.en.softonic.com/

Figura 93: http://scratch-kids.en.softonic.com/

Figura 94: http://en.wikipedia.org/wiki/RoboMind Figura 95: http://edutics21.wordpress.com/2012/10/24/hello-world/ Figura

Figura 94: http://en.wikipedia.org/wiki/RoboMind

Figura 95: http://edutics21.wordpress.com/2012/10/24/hello-world/

Figura 96: Tela Inicial Editar do software RoboMind

Figura 97: Tela Inicial Editar do software RoboMind

Figura 98: Tela Inicial Editar do software RoboMind

Figura 99: Tela InicialExibir do software RoboMind

Figura 100: Tela Inicial Executar do software RoboMind

Figura 101: Tela de Mapas do RoboMind

Figura 102: Mapa Castle.mapChambers.map.

Figura 103: Mapa chambers.map

Figura 104: Mapa CopyLine1.map.

Figura 105: Mapa ChangeBelt.map.

Figura 106: Mapa FindSpot1.map.

Figura 107: Mapa Maze1.map.

Figura 108: Mapa PassBeacons.map.

Figura 109: http://www.robomind.net/en/docBasicInstructions.htm

Figura 110: Tela Inicial Inserir do software RoboMind

Figura 111: Tela Inicial Inserir do software RoboMind

Figura 112: Tela Inicial Inserir do software RoboMind