90
Introdução à Programação Manual do Estudante

Material_CursoDeIntroduçãoaProgramação

Embed Size (px)

Citation preview

Page 1: Material_CursoDeIntroduçãoaProgramação

Introdução à Programação

Manual do Estudante

Page 2: Material_CursoDeIntroduçãoaProgramação

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

Page 3: Material_CursoDeIntroduçãoaProgramação

Sumário _____________________________________________________

Apresentação .............................................................................................................................. 6

Ambiente e Softwares ................................................................................................................. 8

O Ambiente de Colaboração ................................................................................................... 8

Softwares .............................................................................................................................. 15

Jogo light-Bot .................................................................................................................... 15

RoboMIND........................................................................................................................ 15

Scratch ............................................................................................................................... 15

Conceitos Básicos ..................................................................................................................... 16

Você sabe o que é lógica? ..................................................................................................... 16

Lógica na Programação de Computadores ........................................................................ 18

Algoritmo! O que é isso? .................................................................................................. 19

Como funciona um computador? .......................................................................................... 22

Hardware ........................................................................................................................... 22

Software ou Programas de Computador............................................................................ 23

Dados e Informação .............................................................................................................. 25

Dados ................................................................................................................................. 25

Informação ........................................................................................................................ 25

Entrada e Saída .................................................................................................................. 26

Processamento ................................................................................................................... 26

Representações de Dados ......................................................................................................... 28

Tipos primitivos de dados ..................................................................................................... 28

Inteiro ................................................................................................................................ 29

Real.................................................................................................................................... 29

Caractere............................................................................................................................ 29

Lógico ou Booleano .......................................................................................................... 30

Variáveis ............................................................................................................................... 30

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

Page 4: Material_CursoDeIntroduçãoaProgramação

Constantes ............................................................................................................................. 34

Expressões Aritméticas e Lógicas ........................................................................................ 37

Operadores Relacionais ........................................................................................................ 39

Operadores Lógicos .............................................................................................................. 40

Comandos de Atribuição ...................................................................................................... 42

Comandos de Entrada e Saída .............................................................................................. 43

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

Estrutura Sequencial ............................................................................................................. 45

Comandos de Decisão ........................................................................................................... 48

Se Então............................................................................................................................. 48

Resposta ............................................................................................................................ 49

Senão ................................................................................................................................. 49

Estruturas de Seleção Simples........................................................................................... 51

Estrutura de Seleção Composta ......................................................................................... 52

Estruturas de Seleção Encadeada ...................................................................................... 53

Estrutura de Repetição .......................................................................................................... 54

Tipos de estrutura de repetição.......................................................................................... 56

Jogos e Softwares ..................................................................................................................... 61

light-Bot ................................................................................................................................ 61

Conhecendo o Jogo ........................................................................................................... 62

Scratch .................................................................................................................................. 65

Conhecendo o Software .................................................................................................... 65

RoboMIND ........................................................................................................................... 75

Conhecendo o Ambiente ................................................................................................... 76

Referências ............................................................................................................................... 85

Page 5: Material_CursoDeIntroduçãoaProgramação
Page 6: Material_CursoDeIntroduçãoaProgramação

Apresentação

_____________________________________________________

Caro estudante,

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.

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.

“Não se pode ensinar coisa alguma a alguém, pode-se apenas auxiliá-lo a descobrir

por si mesmo".

Galileu Galilei

Page 7: Material_CursoDeIntroduçãoaProgramação

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 e Internet diariamente;

- Ter disponibilidade para os encontros presenciais.

Page 8: Material_CursoDeIntroduçãoaProgramação

Ambiente e Softwares

_____________________________________________________

Neste Módulo você encontrará uma a

disponibilizadas as aulas e todo material

softwares que serão utilizados para

______________________________________________________________________

O Ambiente de Colaboração

aprendizagem por meio da Internet e de dispositivos móveis” (GOMES, 2013).

A Plataforma tem como foco

aprendizagem, no qual professores

conteúdos (textos, imagens, vídeos, apresentações, aplicativos, outros

1

Realizei o cadastro Ambiente. E agora?

Figura 1: REDU

Figura 2: Tela de início.

Ambiente e Softwares

_____________________________________________________

você encontrará uma apresentação do Ambiente de Colaboração

e todo material acerca do conteúdo abordado. Também conhecerá

softwares que serão utilizados para o desenvolvimento do Curso.

______________________________________________________________________

O Ambiente de Colaboração

A Rede Social Educacional (REDU) foi

desenvolvida no Centro de Informática (CIn)

da Universidade Federal de Pernambuco

(UFPE) e lançada em Fevereiro de 2010.

“Trata-se de um ambiente para professores e

alunos que permite criar situações de

aprendizagem por meio da Internet e de dispositivos móveis” (GOMES, 2013).

foco ensino e possibilita um novo espaço de ambiente virtual de

aprendizagem, no qual professores e alunos podem criar interagir, compartilhar e discutir

conteúdos (textos, imagens, vídeos, apresentações, aplicativos, outros).

Realizei o cadastro no . E agora?

REDU.

Tela de início.

8

Ambiente e Softwares

_____________________________________________________

presentação do Ambiente de Colaboração onde serão

Também conhecerá os

______________________________________________________________________

A Rede Social Educacional (REDU) foi

desenvolvida no Centro de Informática (CIn)

Universidade Federal de Pernambuco

(UFPE) e lançada em Fevereiro de 2010.

se de um ambiente para professores e

alunos que permite criar situações de

aprendizagem por meio da Internet e de dispositivos móveis” (GOMES, 2013).

possibilita um novo espaço de ambiente virtual de

criar interagir, compartilhar e discutir

Page 9: Material_CursoDeIntroduçãoaProgramação

Após a realização de seu cadastro na

você irá procurar pelo Curso

matricular (Figura 3).

A opção destacada na Figura 3

pesquisar pelo Curso de

encontrado clique para prosseguir.

Figura 3:

Após a realização de seu cadastro na Plataforma você será direcionado a sua página. E

Curso, Introdução à Programação – UPE Garanhuns, no

Figura 3 indica a barra de pesquisa do ambiente, nela será possível

de Introdução à Programação – UPE Garanhuns

encontrado clique para prosseguir.

Uma vez encontrado o Curso clique na opção

(Figura 4) para se tornar aluno. Nesse momento você já terá

acesso a todo o material, informações, discussões, webquests,

fóruns, entre outros.

Como faço para me matricular no Curso?

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

9

será direcionado a sua página. Então,

UPE Garanhuns, no qual irá se

indica a barra de pesquisa do ambiente, nela será possível

UPE Garanhuns, uma vez

clique na opção Matricular-se

Nesse momento você já terá

informações, discussões, webquests,

matricular no

Pesquisar por o Curso de Introdução à Programação.

Page 10: Material_CursoDeIntroduçãoaProgramação

As disciplinas são divididas em Módulos

conjuntos de aulas com conteúdos

dos módulos é possível visualizar

referentes ao Curso Introdução à Programação

Conteúdo (Figura 5) localizada dentro das disciplinas

Onde encontro os conteúdos disponíveis para o Curso?

Figura 4: Matrícula no Curso.

10

são divididas em Módulos, que são

conteúdos em comum. Dentro

é possível visualizar os conteúdos

Programação na opção

localizada dentro das disciplinas.

Onde encontro os conteúdos disponíveis

Page 11: Material_CursoDeIntroduçãoaProgramação

No Mural da Disciplina

esclarecimento de dúvidas sobre as aulas

Nele est

criação de aulas

colegas e aprender

Onde irei debater e esclarecer dúvidas das aulas?

Figura

Mural da Disciplina (Figura 6), que é um espaço

esclarecimento de dúvidas sobre as aulas com professores

estão todas as atualizações realizadas na Disciplina, o que inclui a

criação de aulas e comentários, sendo possível ainda

colegas e aprender de um jeito dinâmico.

Onde irei debater e esclarecer dúvidas das aulas?

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

11

spaço aberto para debates e

professores e outros alunos.

Disciplina, o que inclui a

ainda pedir auxílio aos

Page 12: Material_CursoDeIntroduçãoaProgramação

Sim!

perfil, está

Você também visualiza todas as atualizações realizadas no ambiente.

Tenho espaço para minhas próprias postagens?

Sim! O espaço Meu Mural (Figura 7) disponível logo abaixo do

perfil, está aberto a todos os seus próprios comentários e postagens.

Você também visualiza todas as atualizações realizadas no ambiente.

Tenho espaço para minhas próprias postagens?

Figura 6: Ferramenta Mural de Discussão.

12

isponível logo abaixo do

aberto a todos os seus próprios comentários e postagens.

Você também visualiza todas as atualizações realizadas no ambiente.

Page 13: Material_CursoDeIntroduçãoaProgramação

Claro que sim! A Plataforma conta com a ferramenta

(Figura 8), localizada abaixo do Perfil de

possível o envio de mensagens instantâneas para discutir

com os envolvidos, os assuntos o

adicionar os tutores e demais alunos do

comunicar-se por bate papo.

Posso me comunicar por bate-papo?

Figura 7: Meu Mural.

13

conta com a ferramenta Chat

localizada abaixo do Perfil de Usuário. Nela é

o envio de mensagens instantâneas para discutir,

o Curso. Lembre-se de

adicionar os tutores e demais alunos do Curso para

papo?

Page 14: Material_CursoDeIntroduçãoaProgramação

Para mais informações sobre o Ambiente acesse os links abaixo.

Para mais informações sobre o Ambiente acesse os links abaixo.

Redu: http://ajuda.redu.com.br/

Guia Básico: http://ajuda.redu.com.br/guia-

Guia do Aluno: http://ajuda.redu.com.br/guia

Figura 8: Ferramenta Chat.

14

Para mais informações sobre o Ambiente

-basico

http://ajuda.redu.com.br/guia-do-aluno

Page 15: Material_CursoDeIntroduçãoaProgramação

Softwares

Durante o desenvolvimento do

Programação, vamos conhecê

com os tutoriais.

Jogo light-Bot

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

de diversas ações para que ele alcance o objetivo

proposto e acenda a luz em sua cabeça.

Fique atento! Existe uma quantidade limitada de ações

que ele pode realizar.

ACESSO AO JOGO: http://clickjogos.uol.com.br/Jogos

DOWLOAD DO SOFTWAR

Scratch

Um programa que permite criar animações, histórias

interativas e até mesmo jogos por meio de uma linguagem

de programação simples.

MAIS INFORMAÇÕES :

Figura 10: RoboMIND.

Durante o desenvolvimento do Curso você utilizará alguns softwares para

Programação, vamos conhecê-los? Para aprender a utilizar esse softwares veja o módulo 5

você poderá controlar um robô através

de diversas ações para que ele alcance o objetivo

proposto e acenda a luz em sua cabeça.

Existe uma quantidade limitada de ações

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

RoboMIND

Um ambiente para programação de robôs, que permite

conhecer conceitos básicos de programação de

computadores. Através do RoboMIND

um robô que anda, vê, pega objetos e pinta, sendo possível

realizar diversos experimentos.

DOWLOAD DO SOFTWAR E: http://www.baixaki.com.br/download/

programa que permite criar animações, histórias

interativas e até mesmo jogos por meio de uma linguagem

: http://scratch.mit.edu/

Figura

Figura

15

você utilizará alguns softwares para auxiliar o estudo da

Para aprender a utilizar esse softwares veja o módulo 5

online/Puzzle/Light-Bot/

ambiente para programação de robôs, que permite

conhecer conceitos básicos de programação de

RoboMIND você pode programar

um robô que anda, vê, pega objetos e pinta, sendo possível

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

Figura 9: light-Bot.

Figura 11: Schatch.

Page 16: Material_CursoDeIntroduçãoaProgramação

16

Conceitos Básicos

_____________________________________________________

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.

_______________________________________________________________

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

dizer o que é lógica?

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 é 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).

2

Figura 12.

Page 17: Material_CursoDeIntroduçãoaProgramação

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

ou ser contrário a

escrevemos, estamos expressando nossos pensamentos, logo,

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

Podemos perceber a importância da lógica na nossa vida, não

apenas na teoria, mas princip

queremos pensar, falar, escrever ou agir corretamente,

pensamento, isto é, utilizar lógica.

Exemplos

1- A gaveta está fechada;

A caneta está dentro da gaveta;

Precisamos primeiro abrir a gaveta

caneta.

Figura 14.

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

ou ser contrário a ela), nos acompanham. Quando falamos ou

escrevemos, estamos expressando nossos pensamentos, logo,

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

Podemos perceber a importância da lógica na nossa vida, não

apenas na teoria, mas principalmente na prática, já que, quando

queremos pensar, falar, escrever ou agir corretamente, precisamos colocar ordem no

pensamento, isto é, utilizar lógica.

A gaveta está fechada;

A caneta está dentro da gaveta;

Precisamos primeiro abrir a gaveta para depois pegar a

2- Anacleto é mais velho que Felisberto;

Felisberto é mais velho que Marinaldo;

Logo, Anacleto é mais velho que Marinaldo.

Existe Lógica no dia a dia?

17

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

ela), nos acompanham. Quando falamos ou

escrevemos, estamos expressando nossos pensamentos, logo,

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

Podemos perceber a importância da lógica na nossa vida, não

almente na prática, já que, quando

precisamos colocar ordem no

Anacleto é mais velho que Felisberto;

Felisberto é mais velho que Marinaldo;

Logo, Anacleto é mais velho que Marinaldo.

Figura 13.

Page 18: Material_CursoDeIntroduçãoaProgramação

Vamos praticar?

Dois pais e dois filhos passeavam por um bosque e

encontraram uma laranjeira com quatro laranjas.

Cada um chupou uma laranja e ainda sobrou uma.

instruções.

Mas, o que é uma instrução?

A lógica na programação consiste em: dado um problema e fornecidos os dados de entrada,

identificar uma sequência de instruções tal que, por meio da execução desta sequência

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

Lógica, dados, sequência, instruções,

programação?

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

Dois pais e dois filhos passeavam por um bosque e

encontraram uma laranjeira com quatro laranjas.

Cada um chupou uma laranja e ainda sobrou uma.

Lógica na Programação de Computadores

Quando falamos em lógica na programação de

computadores, sempre nos remetemos à sequências de

Mas, o que é uma instrução?

A lógica na programação consiste em: dado um problema e fornecidos os dados de entrada,

identificar uma sequência de instruções tal que, por meio da execução desta sequência

solução do problema.

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

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

Mas o que isso tem haver com programação?

Figura

18

na Programação de Computadores

na programação de

, sempre nos remetemos à sequências de

A lógica na programação consiste em: dado um problema e fornecidos os dados de entrada,

identificar uma sequência de instruções tal que, por meio da execução desta sequência

saída, solução de problemas? O que isso tem haver com

Instrução pode ser considerada um conjunto de regras ou normas definidas para a

Mas o que isso tem

Figura 15.

Page 19: Material_CursoDeIntroduçãoaProgramação

Com certeza ao falar em computação ou programação você já ouviu falar em algoritmo,

prossiga sua leitura e descubra essa relação.

Algoritmo ! O que é isso?

Embora a palavra seja estranha

associam apenas a Computação

apenas a esta área e também não surgiu junto com os computadores.

O termo é bastante utilizado em outras áreas, como Engenharia,

Administração, Matemática, entre outras.

Mas afinal o que é um algoritmo?

Algoritmo, nada mais é do que um

execução de uma tarefa.

Então, quer dizer que

eu uso algoritmos no

meu dia-a-dia?

Com certeza ao falar em computação ou programação você já ouviu falar em algoritmo,

e descubra essa relação.

! O que é isso?

seja estranha para algumas pessoas, muitas

omputação. O termo algoritmo não é restrito

a área e também não surgiu junto com os computadores.

tilizado em outras áreas, como Engenharia,

tica, entre outras.

Mas afinal o que é um algoritmo?

Algoritmo, nada mais é do que uma sequência lógica de instruções,

quer dizer que

eu uso algoritmos no

19

Com certeza ao falar em computação ou programação você já ouviu falar em algoritmo,

passo a passo, para a

Figura 17.

Page 20: Material_CursoDeIntroduçãoaProgramação

20

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

instrução vista anteriormente.

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.

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

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:

• 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.

Figura 18.

Figura 19.

Page 21: Material_CursoDeIntroduçãoaProgramação

21

� 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.

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.

Figura 20.

Page 22: Material_CursoDeIntroduçãoaProgramação

22

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.

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

Dispositivos Entrada/Saída

Memória

Teclado Mouse Monitor Impressora Etc...

Conexões externas

BARRAMENTO

Figura 21.

Figura 22: Arquitetura simplificada de um computador.

Page 23: Material_CursoDeIntroduçãoaProgramação

23

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.

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.

Figura 23. Figura 24.

Page 24: Material_CursoDeIntroduçãoaProgramação

24

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.

Desafio 2:

� 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.

Figura 25.

Figura 26.

Page 25: Material_CursoDeIntroduçãoaProgramação

25

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!

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.

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.

Figura 27.

Figura 28.

Page 26: Material_CursoDeIntroduçãoaProgramação

26

Entrada e Saída

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

abaixo.

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 29.

Page 27: Material_CursoDeIntroduçãoaProgramação

Capturar: Buscar os dados onde

Manipular: Tratar os dados de forma que possam ser organizados e ganhar sentido

(transformando-se em informação).

Armazenar: Guardar os dados de maneira organizada.

Recuperar: Buscar os dados que foram armazenados de forma organiz

Apresentar: Mostrar os dados de forma compreensível.

Transmitir: Enviar e receber dados de outros locais.

Neste Módulo você � O que é Lógica � O que é algoritmo� O que é um programa de computador� O que são Dados e o que são Informações� Como um programa de computador funciona (Entrada, processamento e

saída)

Prossiga nos seus estudos, ainda temos muito a aprender...

Buscar os dados onde eles existem e trazê-los.

Tratar os dados de forma que possam ser organizados e ganhar sentido

se em informação).

Guardar os dados de maneira organizada.

Buscar os dados que foram armazenados de forma organizada.

Mostrar os dados de forma compreensível.

Enviar e receber dados de outros locais.

Neste Módulo você pôde aprender...

O que é algoritmo O que é um programa de computador O que são Dados e o que são Informações Como um programa de computador funciona (Entrada, processamento e

Prossiga nos seus estudos, ainda temos muito a aprender...

Figura 30.

27

Tratar os dados de forma que possam ser organizados e ganhar sentido

ada.

Como um programa de computador funciona (Entrada, processamento e

Prossiga nos seus estudos, ainda temos muito a aprender...

Page 28: Material_CursoDeIntroduçãoaProgramação

Representações de Dados

_____________________________________________________

Caro Aluno, neste módulo

programação e exemplos do nosso cotidiano

É importante que ao final deste módulo você possa compreender como algoritmos

parecidos com os programas interpretados po

Bom Estudo!

___________________________________________________________

Tipos primitivos de dadosO que são

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

usados também por uma linguagem

Como assim?

A seguir são apresentados os tipos de dados

das linguagens de programação.

3

Figura 32: Zero

Figura 31.

Representações de Dados

_____________________________________________________

este módulo você conhecerá alguns conceitos básicos de linguagem de

programação e exemplos do nosso cotidiano relacionados a esses conceitos

É importante que ao final deste módulo você possa compreender como algoritmos

parecidos com os programas interpretados por computadores.

___________________________________________________________

Tipos primitivos de dados O que são?

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

usados também por uma linguagem algorítmica.

A seguir são apresentados os tipos de dados primitivos mais comuns encontrados na maioria

das linguagens de programação.

Zero Figura 33: 1+1=2

28

Representações de Dados

_____________________________________________________

alguns conceitos básicos de linguagem de

relacionados a esses conceitos.

É importante que ao final deste módulo você possa compreender como algoritmos são muito

___________________________________________________________________________

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

mais comuns encontrados na maioria

Figura 34: Letras

Page 29: Material_CursoDeIntroduçãoaProgramação

29

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 .

Real

É 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.

Caractere

É uma representação das letras, dígitos e símbolos nos

computadores. Podendo ser numéricos, alfabéticos e

especiais.

Figura 35.

Figura 36.

Figura 37.

Page 30: Material_CursoDeIntroduçãoaProgramação

Por Exemplo:

Numéricos: 2, 4, 0. Alfabéticos: a, B, z. Especiais: @,

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

� Operações: comer, dormir, andar, beber

Lógico ou Booleano

Só podem assumir dois valores: verdadeiro ou falso

Servem como uma representação lógica de algo.

Estes valores também podem ser entendidos como:

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

Exemplos de informações que podem ser

representadas utilizando o tipo lógico são:

Variáveis São valores que podem sofrer alteração no decorrer do tempo.

Figura 39: A Lâmpada está acessa.

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

= {Maria, João, José, Ana,...} conjunto de cadeias de caracteres.

Operações: comer, dormir, andar, beber.

valores: verdadeiro ou falso.

Servem como uma representação lógica de algo.

Estes valores também podem ser entendidos como:

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

de informações que podem ser

s utilizando o tipo lógico são:

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

Figura 40: A Lâmpada está apagada.

30

o de cadeias de caracteres.

Figura 38.

A Lâmpada

Page 31: Material_CursoDeIntroduçãoaProgramação

31

Quais valores variam no nosso dia a dia?

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:

Figura 41: Dinheiro na Carteira

Figura 43: Preço da gasolina

Figura 42: O Peso de uma

pessoa

Variável: Tipo de Variável

notaMedia, salario: real

Contador: inteiro

Achou: Lógico (booleano)

Sexo: caractere

Variável = Conteúdo da Variável

NOME = "JOSE"

IDADE = 50

Page 32: Material_CursoDeIntroduçãoaProgramação

Por que declarar variáveis e como nomeá

Quando pedimos que o computador reserve espaço de memória,

temos de informar como vamos nos referir a essa parte da memória

reservada, ou seja,

Assim, toda variável tem um nome através do qual é referenciada.

Pois sempre que criamos uma variável, nós o fazemos com o

objetivo de armazenar algum tipo de valor específico.

Assim, o nome da variável deve deixar claro o objetivo da mesma, ou se

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

Por que declarar variáveis e como nomeá

Quando pedimos que o computador reserve espaço de memória,

temos de informar como vamos nos referir a essa parte da memória

reservada, ou seja, qual nome daremos a esse espaço de

Assim, toda variável tem um nome através do qual é referenciada.

Pois sempre que criamos uma variável, nós o fazemos com o

objetivo de armazenar algum tipo de valor específico.

variável deve deixar claro o objetivo da mesma, ou se

A seguir serão apresentadas algumas regras para variáveis

A palavra var é utilizada para indicar que

estamos declarando uma variável.

Precisamos informar o tipo de dados que armazenaremos

na variável para que o computador saiba o tamanho do

espaço de memória que reservará.

32

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

Quando pedimos que o computador reserve espaço de memória,

temos de informar como vamos nos referir a essa parte da memória

daremos a esse espaço de memória.

Assim, toda variável tem um nome através do qual é referenciada.

Pois sempre que criamos uma variável, nós o fazemos com o

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

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

é utilizada para indicar que

que armazenaremos

na variável para que o computador saiba o tamanho do

Page 33: Material_CursoDeIntroduçãoaProgramação

33

Vamos ver alguns exemplos das regras, o que é permitido e não permitido

na declaração de variáveis:

• 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.

Figura 44.

REGRAS

Page 34: Material_CursoDeIntroduçãoaProgramação

34

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?

Na Prática:

Observação: Declarar as

constantes antes

das variáveis.

Figura 47: PI Figura 46:

Significado do sinal de Vermelho no Transito

Figura 45: Placa Pare

PI = 3.1416;

MAX = 10;

OK = V;

OPCAO = ‘A’;

CONSTANTES

Page 35: Material_CursoDeIntroduçãoaProgramação

Segue asexceto que são escritas com letras maiúsculas.

Segue as mesmas regras das variáveis, exceto que são escritas com letras maiúsculas.

REGRAS

A palavra CONST é utilizada para indicar que

estamos declarando uma constante.

O nome da constante

do qual vamos nos referir à constante.

Apenas para ficar diferente das

aconselha-se que todas as letras

nomes das constantes sejam

Valor é o valor assumido pela constante

35

é utilizada para indicar que

O nome da constante. É o nome através

do qual vamos nos referir à constante.

para ficar diferente das variáveis,

se que todas as letras dos

constantes sejam maiúsculas.

é o valor assumido pela constante.

Page 36: Material_CursoDeIntroduçãoaProgramação

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

Saiba Mais…

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

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

ATENÇÃO! As Variáveisvalor a qualquer momento.

Como assim?

Digamos que você tenha na sua carteira R$ 100,00 reais e que você compre R$ 10,00 reais de pão na padaria então neste caso o valor da sua variável passaria de R$ 100,00 reais para R$ 90,00.

ATENÇÃO! Já as Constantes são criadas possuindo um nunca irá mudar.

Agora imagine que você está em uma avenida muito movimentada e que deseja passar de um lado para o outro da avenida. Para você para passar de maneira segura teria que andar pela a faixa de perdestes. Correto? Sim nesse caso a faixa de perdestes, pois ela possui um significado (valor) que nunca mudará de significado.

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

Saiba Mais…

http://www.siban.com.br/destaque/21_carta.pdf

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

Figura 48.

Variáveis possuem um valor inicial, mas podem mudar de a qualquer momento.

Digamos que você tenha na sua carteira R$ 100,00 reais e que você compre R$ 10,00 reais de pão na padaria então neste caso o valor da sua variável passaria de R$ 100,00 reais para R$ 90,00.

Já as Constantes são criadas possuindo um valor e esse valor

Agora imagine que você está em uma avenida muito movimentada e que deseja passar de um lado para o outro da avenida. Para você para passar de maneira segura teria que andar pela a faixa de perdestes. Correto? Sim nesse

a faixa de perdestes, pois ela possui um significado (valor) que nunca

36

mudar de

Digamos que você tenha na sua carteira R$ 100,00 reais e que você compre R$ 10,00 reais de pão na padaria então neste caso o valor da sua variável

e esse valor

Agora imagine que você está em uma avenida muito movimentada e que deseja passar de um lado para o outro da avenida. Para você para passar de maneira segura teria que andar pela a faixa de perdestes. Correto? Sim nesse

a faixa de perdestes, pois ela possui um significado (valor) que nunca

Page 37: Material_CursoDeIntroduçãoaProgramação

37

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.

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:

Figura 49: Operadores Básicos Aritméticos.

Nota/2

x*2+y/2

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.

Page 38: Material_CursoDeIntroduçãoaProgramação

38

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

os operadores:

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.

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.

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.

Nota 1 + (nota2 + nota3) / 2

Page 39: Material_CursoDeIntroduçãoaProgramação

Para entendermos as expressões lógicas, primeiro precisamos conhecer os op

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

Operadores RelacionaisOs operadores relacionais são utilizados para realizar comparações entre dois valores de um

mesmo tipo: Quando queremos fazer comparações entre valores, ou entre expressões (tanto

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

A uma comparação realizada utilizando um operador relacional se dá

resultado obtido de uma relação é sempre um valor lógico,

Na tabela abaixo temos exemplos de relações e seus resultados. Para tais exemplos, considere

duas variáveis inteiras, A e

expressões lógicas, primeiro precisamos conhecer os op

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

Operadores Relacionais relacionais são utilizados para realizar comparações entre dois valores de um

mesmo tipo: Quando queremos fazer comparações entre valores, ou entre expressões (tanto

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

Comparações Operadores

Igual =

Diferente <>

Maior >

Menor <

Maior ou igual >=

Menor ou igual <=

A uma comparação realizada utilizando um operador relacional se dá

resultado obtido de uma relação é sempre um valor lógico, verdadeiro ou

Na tabela abaixo temos exemplos de relações e seus resultados. Para tais exemplos, considere

e B onde A=5 e B=8:

Tabela 2: Operadores Relacionais.

Simplificando... • Expressões aritméticas: uma conta a ser feita • Operadores aritméticos: os sinais + • Operandos aritméticos: constantes ou variáveis (inteiras ou reais), ou outra expressão aritmética • Precedência na ordem dos cálculos: a mesma da matemática, podendo haver vários níveiparênteses; não há colchetes [ ] ou chaves { }.

39

expressões lógicas, primeiro precisamos conhecer os operadores lógicos

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

relacionais são utilizados para realizar comparações entre dois valores de um

mesmo tipo: Quando queremos fazer comparações entre valores, ou entre expressões (tanto

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

o nome de relação. O

ou falso.

Na tabela abaixo temos exemplos de relações e seus resultados. Para tais exemplos, considere

xpressões aritméticas: uma conta a ser feita.

aritméticos: os sinais + - * / %

nstantes ou variáveis ou reais), ou outra expressão aritmética.

ordem dos cálculos: a mesma da matemática, podendo haver vários níveis de

[ ] ou chaves { }.

Page 40: Material_CursoDeIntroduçãoaProgramação

40

RELAÇÃO

RESULTADO

A=B Falso

A < B Verdadeiro

A>=B Falso

B!= 6 Verdadeiro

A >= 5 Verdadeiro

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

Vejamos outros exemplos:

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

NÃO

Figura 3: Exemplos de Relações

Tabela4: Operadores Lógicos

a) 2 + 5 = 3 + 2

7 = 5

Resultado: F (falso)

b) 3 * 5<> 2 * 3

15 <> 6 Resultado: V (Verdadeiro)

Page 41: Material_CursoDeIntroduçãoaProgramação

41

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

V

V

F

V

F

V

F

F

F

V

A B AouB

F

F

V

V

F

V

F

V

F

V

V

V

A Não A

F

V

V

F

Tabela5: Tabela Verdade Operador E

Tabela 7: Tabela Verdade Operador Não

Tabela 6: Tabela Verdade Operador OU

Page 42: Material_CursoDeIntroduçãoaProgramação

Comandos de AtribuiçãoDefine ou redefine o valor armazenado no local de armazenamento

de variável.

Representações textuais comuns do operador de atribuição incluem um

classificam o operador de atribuição como um operador infixo.

A instrução de atribuição muitas vezes permite que o mesmo nome de variável possa conter

valores diferentes em momentos diferentes durante a execução do programa.

Vejamos a seguinte situação:

Saiba Mais…

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

%A3o)

e Atribuição efine ou redefine o valor armazenado no local de armazenamento indicado por um nome

Representações textuais comuns do operador de atribuição incluem um sinal de igual

classificam o operador de atribuição como um operador infixo.

A instrução de atribuição muitas vezes permite que o mesmo nome de variável possa conter

valores diferentes em momentos diferentes durante a execução do programa.

Vejamos a seguinte situação:

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

Saiba Mais…

http://pt.wikipedia.org/wiki/Atribui%C3%A7%C3%A3o_(computa%C3%A7%C3

Para atribuímos um valor a variavel1

escreve-se o seguinte:

variavel1 = 2

O valor 2 será armazenado na variável cujo

nome é variavel1.

42

indicado por um nome

sinal de igual ("=") e

A instrução de atribuição muitas vezes permite que o mesmo nome de variável possa conter

valores diferentes em momentos diferentes durante a execução do programa.

http://pt.wikipedia.org/wiki/Atribui%C3%A7%C3%A3o_(computa%C3%A7%C3

variavel1

será armazenado na variável cujo

Page 43: Material_CursoDeIntroduçãoaProgramação

43

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 é atribuído o valor de 23. Finalmente, a variável 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

COMPUTADOR... 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.

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.

Figura 50.

Page 44: Material_CursoDeIntroduçãoaProgramação

44

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

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

nome, data aniversario e salário.

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”.

Tabela 8: Arquivo – Cadastro de Funcionários.

Page 45: Material_CursoDeIntroduçãoaProgramação

45

Estruturas de Controle,

Seleção e Repetição

________________________________________________________

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.

________________________________________________________

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.

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.

O exemplo acima, ilustra uma estrutura sequencial cujos comandos são executados na ordem

em que aparecem, formando assim, um algoritmo.

4

Figura 51.

Figura 52.

Page 46: Material_CursoDeIntroduçãoaProgramação

Como assim?

Para um algoritmo poder funcionar, você deve dizer

chamamos isto de comandos de um algoritmo.

Na estrutura sequencial esses

determinar de cima para baixo, e assim, c

anterior.

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

delimitados pelas palavras reservadas

Na estrutura apresentada, o “comando

fim do “comando-1” ou <pegue o celular>

execução do “comando-2” e

Vejamos outras situações semelhantes...

Palavras Reservadas?

São palavras que, foram selecionadas para ddeterminada linguagem de programação.

Voltemos a pensar no conjunto de passos para realizar uma

ligação no celular

Para um algoritmo poder funcionar, você deve dizer claramente o que ele deve fazer

de comandos de um algoritmo.

Na estrutura sequencial esses comandos serão executados na ordem em que você os

determinar de cima para baixo, e assim, cada comando é executado após o fim

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

reservadas Inicio e Fim.

o “comando-2” ou <ligue o celular> será executado somente após o

<pegue o celular> e o “comando-3” <digite o número

2” e assim sucessivamente.

Vejamos outras situações semelhantes...

Inicio

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

São palavras que, foram selecionadas para definir termos específicos de uma determinada linguagem de programação.

Voltemos a pensar no conjunto de passos para realizar uma

ligação no celular e vejamos como funciona essa estrutura.

Inicio

<Comando - 1>< Comando - 2>< Comando - 3>. . . < Comando - n> Fimalgoritmo.

claramente o que ele deve fazer,

comandos serão executados na ordem em que você os

executado após o fim do comando

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

será executado somente após o

digite o número> após a

finir termos específicos de uma

Voltemos a pensar no conjunto de passos para realizar uma

e vejamos como funciona essa estrutura.

1> 2> 3>

n>

Fimalgoritmo.

Page 47: Material_CursoDeIntroduçãoaProgramação

A Loja Magazine está vendendo

conjunto de passos que você

prestações.

Lembra do Software R

Vamos utilizá-lo para ver essa estrutura?

Pense que você esta precisando pintar um caminho e o

robô pelo Mapa até o caminho branco e pinte todo o caminho de preto. Lembre

dos obstáculos do caminho!

Mapa Utilizadodefault.map

Figura 53.

Figura

vendendo seus produtos em 2 (duas) prestações sem juro. Faça

você faria para olhar o valor da compra e contabilizar

Lembra do Software RoboMIND? Apresentado no Módulo 1

lo para ver essa estrutura?

Pense que você esta precisando pintar um caminho e o robô vai te ajudar, então movimente o

pelo Mapa até o caminho branco e pinte todo o caminho de preto. Lembre

obstáculos do caminho!

Utilizadodefault.map

RESPOSTA:

Figura 54.

1. Pegue os produtos;

2. Olhe o preço dos produtos;

3. Some os preços dos produtos;

4. Divida o resultado da soma dos produtos por dois

5. O resultado da divisão é o valor da prestação.

as) prestações sem juro. Faça o

contabilizar o valor das

oboMIND? Apresentado no Módulo 1?

vai te ajudar, então movimente o

pelo Mapa até o caminho branco e pinte todo o caminho de preto. Lembre-se de desviar

Divida o resultado da soma dos produtos por dois;

O resultado da divisão é o valor da prestação.

virarDireita

andarFrente(8)

pintarPreto

andarFrente(1)

virarEsquerda

andarFrente(1)

virarDireita

andarFrente(2)

virarEsquerda

andarFrente(6)

virarEsquerda

andarFrente(8)

virarDireita

andarFrente(2)

pararPintar

Page 48: Material_CursoDeIntroduçãoaProgramação

Comandos de DecisãoOs comandos de decisão ou desvio fazem parte das técnicas de programação que conduzem

estruturas de programas que não são totalmente sequenciais. Com as instruções de

DESVIO pode-se fazer com que o programa proceda de uma ou outra maneira, de a

com as decisões lógicas tomadas em função dos dados ou resultados anteriores.

As principais estruturas de decisão são:

Se Então A estrutura de decisão SE

determinada condição for satisfeita pelo comando então execute determinado

Imagine um algoritmo que

aprovado se sua média for maior ou igual a 6

INÍCIO

Se

media >= 6.0

então

Aluno Aprovado

FIM

Comandos de Decisão Os comandos de decisão ou desvio fazem parte das técnicas de programação que conduzem

programas que não são totalmente sequenciais. Com as instruções de

se fazer com que o programa proceda de uma ou outra maneira, de a

com as decisões lógicas tomadas em função dos dados ou resultados anteriores.

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

SE ENTÃO normalmente vem acompanhada de um comando,

determinada condição for satisfeita pelo comando então execute determinado

verifique a aprovação do aluno, determinado aluno somente estará

sua média for maior ou igual a 6.0, veja no exemplo abaixo de como se

Saiba mais em sobre este assunto em

http://www.youtube.com/watch?v=71OV3St

Figura

Os comandos de decisão ou desvio fazem parte das técnicas de programação que conduzem as

programas que não são totalmente sequenciais. Com as instruções de SALTO ou

se fazer com que o programa proceda de uma ou outra maneira, de acordo

com as decisões lógicas tomadas em função dos dados ou resultados anteriores.

senão e caso selecione.

ompanhada de um comando, se

determinada condição for satisfeita pelo comando então execute determinado ação.

determinado aluno somente estará

abaixo de como seria.

sobre este assunto em:

http://www.youtube.com/watch?v=71OV3St-Fxs

Figura 55.

Page 49: Material_CursoDeIntroduçãoaProgramação

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 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.

Figura 56.

virarDireita

andarFrente(8)

se(brancoFrente){

pintarPreto

andarFrente(1)

virarEsquerda

andarFrente(1)

virarDireita

andarFrente(2)

virarEsquerda

andarFrente(6)

virarEsquerda

andarFrente(8)

virarDireita

}

INÍCIO

1. Esperar ônibus

2. Se ônibus certo então

3. Entrar no ônibus

4. Se não esperar o ônibus

FIM

Page 50: Material_CursoDeIntroduçãoaProgramação

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

Use o seguinte código:

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.

Figura 57.

andarTrás(2)

virarDireita

se(temObjetoFrente){

pegar

}senão{

andarFrente(2)

}

Page 51: Material_CursoDeIntroduçãoaProgramação

Vamos utilizar as estruturas de decisão em estruturas maiores!

Estruturas de Seleção Simples

A estrutura de seleção simples é utilizada quando há a necessidade de testar uma condição

antes da execução de um ou mais comandos.

Você consegue cumprir a missão do Robô?

Utilizando o RoboMINDtente concluir a seguinte missão:

Estando no mapa copyLine1.map

utilizando os comandos se(...) então{...}.

Inicio

1. Verificar a função do funcionário

2. Caso funcionário operador de caixa pague 200

3.Caso funcionário vendedor pague 500

4.Caso funcionário gerente pague 1000

5. Pagamento Realizado

Fim

Vamos utilizar as estruturas de decisão em estruturas maiores!

Estruturas de Seleção Simples

A estrutura de seleção simples é utilizada quando há a necessidade de testar uma condição

antes da execução de um ou mais comandos.

Quando testamos algo, que nesse caso é se está chovendo ou não,

nos será retornado como resposta: Verdadeiro

Você consegue cumprir a missão do Robô?

RoboMINDtente concluir a seguinte missão:

copyLine1.map você precisa pegar a mina que está do lado direito do mapa,

utilizando os comandos se(...) então{...}.

Veja como é simples!

Figura

1. Verificar a função do funcionário

2. Caso funcionário operador de caixa pague 200

endedor pague 500

4.Caso funcionário gerente pague 1000

Início

Se estiver sol então

Passo filtro solar!

Fim do Se

Vamos utilizar as estruturas de decisão em estruturas maiores!

A estrutura de seleção simples é utilizada quando há a necessidade de testar uma condição

Quando testamos algo, que nesse caso é se está chovendo ou não,

Verdadeiro ou Falso.

sa pegar a mina que está do lado direito do mapa,

Figura 58.

Page 52: Material_CursoDeIntroduçãoaProgramação

Quais os passos para esse algoritmo?

Estrutura de Seleção Composta

A condição que vimos até agora é única, mas algumas situações precisam usar condições mais

elaboradas. A estrutura de seleção composta é utilizada quando há duas alternativas que

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

Quando testamos algo, nesse caso, se está chovendo ou não, nos será retornado como

resposta: Verdadeiro ou Falso

Figura

Quais os passos para esse algoritmo?

Mapa Utilizado: copyLine1.map

Resposta:

Estrutura de Seleção Composta

A condição que vimos até agora é única, mas algumas situações precisam usar condições mais

elaboradas. A estrutura de seleção composta é utilizada quando há duas alternativas que

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

Quando testamos algo, nesse caso, se está chovendo ou não, nos será retornado como

Falso, e a partir da resposta decidir ir ou não a praia.

Como funciona isso?

andarFrente(1)

virarDireita()

andarFrente(9)

se(temObstáculoFrente()){

pegar()

}

Figura 59.

Início

Se estiver sol então

Eu vou à praia!

Senão

Fico em casa!

Fim do Se

Mapa Utilizado: copyLine1.map

A condição que vimos até agora é única, mas algumas situações precisam usar condições mais

elaboradas. A estrutura de seleção composta é utilizada quando há duas alternativas que

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

Quando testamos algo, nesse caso, se está chovendo ou não, nos será retornado como

, e a partir da resposta decidir ir ou não a praia.

se(temObstáculoFrente()){

Page 53: Material_CursoDeIntroduçãoaProgramação

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(...){...} senão{...}. Você consegue cumprir mais

essa missão?

Quais os passos para esse algoritmo?

Mapa Utilizado: copyLine1.map

Resposta:

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.

Figura 59.

virarEsquerda()

virarEsquerda()

andarFrente(4)

se(temObjetoEsquerda()){

virarEsquerda()

andarFrente(8)

pegar()

}senão{

temObjetoDireita()

virarDireita()

andarFrente(5)

pegar()

}

Page 54: Material_CursoDeIntroduçãoaProgramação

Lembra-se do exemplo anterior

Observe que tínhamos uma condição para ir à

estiver com dinheiro. Essa é uma estrutura simples encadeada.

Veremos que em alguns algoritmos precisaremos de mais de uma condição ao mesmo tempo.

Estrutura de Repetição

As estruturas de repetição possibilit

algorítmicas venha a ser

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

Veja que os passos se repetiram para poder executar a tarefa de aumentar o

tipo de estrutura chamamos de estrutura de repetição. Essas estruturas permitem que uma ou

Início

Se estiver sol então

Se tiver dinheiro

Eu vou à praia!

Fim do Se

Fim do Se

Senão

Fico em casa.

Fim do Se

Figura 62.

se do exemplo anterior da chuva? Vejamos como ficaria:

Observe que tínhamos uma condição para ir à praia e agora temos duas, se estiver sol e se

estiver com dinheiro. Essa é uma estrutura simples encadeada.

Veremos que em alguns algoritmos precisaremos de mais de uma condição ao mesmo tempo.

Estrutura de Repetição

As estruturas de repetição possibilitam que o processamento de algumas instruções

executadas repetidas vezes, segundo a necessidade da lógica

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

Quando pensamos nos passos que realizamos para

aumentar o volume da televisão, logo nos deparamos com

os seguintes passos: pegue o controle, encontre o botão

de aumentar o volume, clique, clique, clique, até o

volume ser aumentado.

Veja que os passos se repetiram para poder executar a tarefa de aumentar o

mamos de estrutura de repetição. Essas estruturas permitem que uma ou

tiver dinheiro então

Eu vou à praia!

Figura 60.

praia e agora temos duas, se estiver sol e se

Veremos que em alguns algoritmos precisaremos de mais de uma condição ao mesmo tempo.

am que o processamento de algumas instruções

executadas repetidas vezes, segundo a necessidade da lógica

Quando pensamos nos passos que realizamos para

visão, logo nos deparamos com

pegue o controle, encontre o botão

de aumentar o volume, clique, clique, clique, até o

Veja que os passos se repetiram para poder executar a tarefa de aumentar o volume. A este

mamos de estrutura de repetição. Essas estruturas permitem que uma ou

Page 55: Material_CursoDeIntroduçãoaProgramação

mais instruções sejam executadas um número definido de vezes, ou enquanto uma

determinada condição não é satisfeita.

Vamos tomar um café?

Primeiro precisamos prepará

Este poderia ser reescrito, de forma melhorada, como segue abaixo:

Figura 63.

1. Colocar o açúcar na xícara;

2. Colocar o café na xícara;

3. Colocar água quente;

Repita (até ficar doce);

4. Mexer;

FimRepita

5. Tomar o café.

mais instruções sejam executadas um número definido de vezes, ou enquanto uma

determinada condição não é satisfeita.

Vamos tomar um café?

Primeiro precisamos prepará-lo!

Quais seriam os passos desse algoritmo?

poderia ser reescrito, de forma melhorada, como segue abaixo:

Vejamos como essa estrutura funciona.

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

2.Colocar o café na xícara

3. Colocar a água quente

4. Mexer

5. Mexer

6. Mexer

7. Mexer

8. Mexer

9. Mexer

10. Prove se doce

11.Tomar o café

Colocar o açúcar na xícara;

Colocar o café na xícara;

Colocar água quente;

(até ficar doce);

mais instruções sejam executadas um número definido de vezes, ou enquanto uma

Quais seriam os passos desse algoritmo?

poderia ser reescrito, de forma melhorada, como segue abaixo:

Vejamos como essa estrutura funciona.

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

2.Colocar o café na xícara

na xícara

Page 56: Material_CursoDeIntroduçãoaProgramação

Em algoritmos e programas

valor uma única vez, não é sufi

utilizar uma Estrutura de R

Tipos de estrutura de repetição

A estrutura CondicionalA estrutura condicional repete um ou mais comandos até satisfazer a condição de repetição.

Estas são utilizadas quando não se sabe de antemão quantas vezes deve

instruções do bloco de repetição.

� Estrutura condicional com teste de repetição no inicio

� Estrutura condicional com teste de repetição no final

Estrutura condicional Enquanto/Faça

O que seria essa estrutura

Os comandos se repetem enquan

Imagine que você precisa entrar no banco, e a porta está fechada, você precisa pressionar o

botão que abre a porta, para ela abrir e você entrar.

algoritmos e programas muitas vezes existem situações em que o processamento de

valor uma única vez, não é suficiente para resolver o problema. Quando isto ocorre,

Repetição.

Tipos de estrutura de repetição

A estrutura Condicional A estrutura condicional repete um ou mais comandos até satisfazer a condição de repetição.

Estas são utilizadas quando não se sabe de antemão quantas vezes deve

instruções do bloco de repetição.

Estrutura condicional com teste de repetição no inicio ENQUANTO/FAÇA

Estrutura condicional com teste de repetição no final REPITA/ATÉ

Estrutura condicional Enquanto/Faça

ria essa estrutura?

enquanto a condição não se torna falsa.

gine que você precisa entrar no banco, e a porta está fechada, você precisa pressionar o

botão que abre a porta, para ela abrir e você entrar.

Vejamos como essa estrutura

funciona.

que o processamento de um

Quando isto ocorre, deve-se

A estrutura condicional repete um ou mais comandos até satisfazer a condição de repetição.

Estas são utilizadas quando não se sabe de antemão quantas vezes deve-se executar as

ENQUANTO/FAÇA

REPITA/ATÉ

gine que você precisa entrar no banco, e a porta está fechada, você precisa pressionar o

Page 57: Material_CursoDeIntroduçãoaProgramação

Vejamos o algoritmo para entrar:

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.

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

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.

Figura 64.

Figura 65.

Page 58: Material_CursoDeIntroduçãoaProgramação

Resposta:

Estrutura condicional

O que seria essa estrutura?

A diferença entre a estrutura

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

João está com a porta de casa quebrada e precisa concertá

isso, precisa apertar um parafuso

Veja que nesta condição você repete o comando “apertar parafuso” até que a condição seja

verdadeira, no caso, até “parafuso apertado”.

Utilizando o software ROBOMIND

repetirEnquanto (tem objeto) {pegar andarSul(0) soltar andarLeste(1) andarNorte(0) }

andarSul(0)

Figura

Estrutura condicional Repita/Até

O que seria essa estrutura?

A diferença entre a estrutura ENQUANTO e a estrutura REPITA é que na estrutura REPITA

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

João está com a porta de casa quebrada e precisa concertá

isso, precisa apertar um parafuso.

Veja que nesta condição você repete o comando “apertar parafuso” até que a condição seja

verdadeira, no caso, até “parafuso apertado”.

Utilizando o software ROBOMIND.

repetirEnquanto (tem objeto) {

Vejamos como essa estrutura

funciona.

1. Pegar o parafuso

2. Colocar parafuso na porta

3. Repita

4. Apertar parafuso

5. Até que parafuso apertado

6. Porta concertada

Figura 66.

é que na estrutura REPITA

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

João está com a porta de casa quebrada e precisa concertá-la, para

Veja que nesta condição você repete o comando “apertar parafuso” até que a condição seja

Vejamos como essa estrutura

Figura 67.

Page 59: Material_CursoDeIntroduçãoaProgramação

Você precisa fazer com que o Robô encontre o

repita{...}, se não houver

direita e andar para trás, se não o robô deve

Mapa utilizado findspot.irobo

Estrutura de Repetição

A estrutura “contada” repete

mesmas são utilizadas quando se sabe

instruções do bloco de repetição.

Estrutura contada Para/Faça

O que seria essa estrutura

Quando pretende se repetir uma determinada condição uma quantidad

utiliza-se este tipo de estrutura.

Figura 68.

fazer com que o Robô encontre o local branco. Para isso, utilize o comando

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

direita e andar para trás, se não o robô deve andar para frente.

Mapa utilizado findspot.irobo

Estrutura de Repetição Contada

A estrutura “contada” repete um número contado (pré-definido) de vezes os comandos

as quando se sabe previamente quantas vezes devem

do bloco de repetição.

Para/Faça

ria essa estrutura?

Quando pretende se repetir uma determinada condição uma quantidade de vezes

se este tipo de estrutura.

repetir{ se(não temObstáculoEsquerda e brancoEsquerda){ virarDireita andarTrás(1) fim } senão{ andarFrente(1) } }

Vejamos como essa estrutura

funciona.

local branco. Para isso, utilize o comando

branco, o robô deve virar a

vezes os comandos. As

previamente quantas vezes devem-se executar as

e de vezes determinada,

Vejamos como essa estrutura

Page 60: Material_CursoDeIntroduçãoaProgramação

Flávio quer um algoritmo que escreve a frase “sou brasileiro” cinco vezes.

Observe que nessa estrutura sabe

operação, no caso 5. E temos uma variável para contar quantas vezes aquela operação esta

sendo repetida, no caso “Variável Contadora”. Então quando sabemos a quantidade de

que iremos repetir um determinado comando utilizamos a

Você consegue realizar mais uma missão?

Você precisa delimitar uma área em forma de quadrado, com

construa a área em forma de quadrado

Figura 69.

Figura 70.

Flávio quer um algoritmo que escreve a frase “sou brasileiro” cinco vezes.

Inicie a Variável Contadora em 1, ela fará o controle de quantas

vezes o bloco de instrução será repetido, no caso,

Para Variável Contadora recebendo 1 até repetir

"sou brasileiro"

Quando a variável contadora chegar a cinco, termine o processo,

o qual saíra cinco vezes o nome "sou brasileiro

Observe que nessa estrutura sabe-se a quantidade de vezes que pretendemos repetir a

. E temos uma variável para contar quantas vezes aquela operação esta

sendo repetida, no caso “Variável Contadora”. Então quando sabemos a quantidade de

que iremos repetir um determinado comando utilizamos a estrutura de repetição contadora

Você consegue realizar mais uma missão?

Você precisa delimitar uma área em forma de quadrado, com o comando repita

em forma de quadrado com as bordas brancas utilizando o pincel.

Mapa utilizado default.map

Resposta:

pintarBranco

repetir(4) {

andarFrente(2)

virarDireita

}

pararPintar

Flávio quer um algoritmo que escreve a frase “sou brasileiro” cinco vezes.

fará o controle de quantas

repetido, no caso, 5 vezes.

1 até repetir 5 vezes faça

ntadora chegar a cinco, termine o processo,

co vezes o nome "sou brasileiro".

se a quantidade de vezes que pretendemos repetir a

. E temos uma variável para contar quantas vezes aquela operação esta

sendo repetida, no caso “Variável Contadora”. Então quando sabemos a quantidade de vezes

estrutura de repetição contadora.

o comando repita(..){...},

com as bordas brancas utilizando o pincel.

Mapa utilizado default.map

Resposta:

pintarBranco

andarFrente(2)

Page 61: Material_CursoDeIntroduçãoaProgramação

_____________________________________________________

light-Bot

Jogo online no qual você pode

alcance o objetivo proposto e acenda a luz em sua cabeça. Para isso, é necessário um conjunto

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

Para controlar o robô atribua os mo

conceito de algoritmo dado que ele tem u

sequência detalhada de passos

5 Jogos e Softwares

_____________________________________________________

no qual você pode controlar um robô através de diversas ações para que ele

alcance o objetivo proposto e acenda a luz em sua cabeça. Para isso, é necessário um conjunto

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

Para controlar o robô atribua os movimentos que serão executados por ele.

conceito de algoritmo dado que ele tem uma tarefa a ser realizada

sequência detalhada de passos para tal.

Figura 71.

Softwares

_____________________________________________________

controlar um robô através de diversas ações para que ele

alcance o objetivo proposto e acenda a luz em sua cabeça. Para isso, é necessário um conjunto

vimentos que serão executados por ele. Use a lógica e o

tarefa a ser realizada e necessita de uma

Page 62: Material_CursoDeIntroduçãoaProgramação

Conhecendo o Jogo

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

Nível Editor para criar desafios para o robô.

Tutoriais para conhecer como funciona o jogo.

Ícone Apresentar Pontuação

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

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.

Page 63: Material_CursoDeIntroduçãoaProgramação

1. Principais funções

2.Utilizando Função nos desafios mais complexos

Aqui se coloca os comandos para o robô andar e chegar até ao quadrado azul e acender a luz.

Perceba que ele necessitou de três passos para acender a luz.

Como os comandos são limitados, a função é usada quando o robô executa comandos repetidos.

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.

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

Figura 74: Exemplo atividade Nível Básico

Figura 75:Exemplo atividade Nível Básico

Page 64: Material_CursoDeIntroduçãoaProgramação

Você está preparado para criar seu jogo?

2. Nível Editor

Figura 76: Nível Editor

Ferramenta para adicionar os obstáculos ao caminho do robô.

Ferramenta para colocar o local de chegada do robô para acender.

Ferramenta para testar o

jogo construído.

Ferramenta para limpar os obstáculos.

Após salvar o jogo criado é possível carregar o mesmo por meio desta ferramenta.

Espaço para os comandos necessários à realização da tarefa.

Page 65: Material_CursoDeIntroduçãoaProgramação

Scratch

É 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 77.

Page 66: Material_CursoDeIntroduçãoaProgramação

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.

Figura 78.

Page 67: Material_CursoDeIntroduçãoaProgramação

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

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

do mouse no comando . Arraste para o Campo (5) – Área de Edição.

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

Figura 79.

Page 68: Material_CursoDeIntroduçãoaProgramação

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.

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 80.

Figura 81.

Page 69: Material_CursoDeIntroduçãoaProgramação

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.

Figura 82.

Figura 83.

Page 70: Material_CursoDeIntroduçãoaProgramação

Figura 84.

Figura 85.

Page 71: Material_CursoDeIntroduçãoaProgramação

Figura 86.

Figura 87.

Page 72: Material_CursoDeIntroduçãoaProgramação

Figura 88.

Figura 89.

Page 73: Material_CursoDeIntroduçãoaProgramação

Figura 90.

Figura 91.

Page 74: Material_CursoDeIntroduçãoaProgramação

Saiba Mais…

Em: http://portalsme.prefeitura.sp.gov.br/Projetos/ie/Documentos/scratch.pdf

Saiba Mais…

http://portalsme.prefeitura.sp.gov.br/Projetos/ie/Documentos/scratch.pdf

Figura 92.

Figura 93.

http://portalsme.prefeitura.sp.gov.br/Projetos/ie/Documentos/scratch.pdf

Page 75: Material_CursoDeIntroduçãoaProgramação

RoboMIND

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

da computação, pensamento computacional e robótica.

facilmente ajustadas para se relacionar com os desafios encontrados no cotidiano e na

indústria. Ele foidesenvolvido com a

O ambiente de programação oferece alguns fundamentos da lógica e da ciência da

computação que permitem simular e criar soluções para praticamente qualquer desafio

software, você controla um pequeno robô utilizando linhas de comando, baseadas em uma

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

Figura 95.

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

da computação, pensamento computacional e robótica. Exercícios e mapas podem ser

facilmente ajustadas para se relacionar com os desafios encontrados no cotidiano e na

volvido com a ideia de ligar a teoria com aplicações.

O ambiente de programação oferece alguns fundamentos da lógica e da ciência da

computação que permitem simular e criar soluções para praticamente qualquer desafio

controla um pequeno robô utilizando linhas de comando, baseadas em uma

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

Olá! Sou o RoboMIND !

Estou pronto para executar todas as instruções que me forem solicitadas.

Então! Vamos aprender como me passar essas instruções?

Figura 94.

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

Exercícios e mapas podem ser

facilmente ajustadas para se relacionar com os desafios encontrados no cotidiano e na

de ligar a teoria com aplicações.

O ambiente de programação oferece alguns fundamentos da lógica e da ciência da

computação que permitem simular e criar soluções para praticamente qualquer desafio. No

controla um pequeno robô utilizando linhas de comando, baseadas em uma

!

Estou pronto para executar todas as instruções

aprender como me passar essas

Page 76: Material_CursoDeIntroduçãoaProgramação

Conhecendo o Ambiente

Menu de arquivos

Painel de escrita

Painel Correr

Mensagem do painel 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.

Figura 96.

Page 77: Material_CursoDeIntroduçãoaProgramação

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

Ícone (Localizar e substituir)

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;

COPIAR – Copia o código

fonte selecionado;

SELECIONAR TUDO

Seleciona todo o código

fonte;

LOCALIZAR – Localiza um texto no código fonte;

SUBISTITUIR – Substitui um texto no código fonte;

Figura 97.

Figura 98.

Page 78: Material_CursoDeIntroduçãoaProgramação

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

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

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;

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.

Figura 99.

Figura 100.

Page 79: Material_CursoDeIntroduçãoaProgramação

Ícone de Mapas

Alguns ambientes disponíveis no RoboMIND

Figura 101.

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.

Figura 102: Castle.mapChambers.map.

.

Figura 103: NOME DO MAPA.

.

Page 80: Material_CursoDeIntroduçãoaProgramação

Figura 104: CopyLine1.map.

.

Figura 105: ChangeBelt.map.

.

Figura 106: FindSpot1.map.

.

Figura 107: Maze1.map.

.

Figura 108: PassBeacons.map.

.

Page 81: Material_CursoDeIntroduçãoaProgramação

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:

Mover

Pintar

andarFrente (n) – Andar n passos para frente

andarTrás (n) - Andar n passos para trás

virarEsquerda - Vira 90 graus para a esquerda

virarDireita – Vira 90 graus para a direita

andarNorte (n) – Vira para o norte e anda n passos para

frente

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

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

pintarBranco - Pega o pincel e pinta o chão de branco

pintatPreto - Pegar o pincel e pintar o chão de preto

pararPintar - Para de pintar e esconde o pincel

Figura 109.

Page 82: Material_CursoDeIntroduçãoaProgramação

Pegar

Ver

E no programa, onde posso encontrar essas instruções, para movimentar o robô?

Pegar-Pega o objeto em frente do robô

Soltar-Solta o objeto em rente ao robô

Page 83: Material_CursoDeIntroduçãoaProgramação

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:

Clique no ícone

INSERIR, MOVER, e

escolha a instrução

que você deseja que

o robô execute!

Condições

Se ( ) { }

Se ( ) { } senão { }

Se ( ) { } senão se ( ) { }

Se ( ) { } senão se ( ) { }senão{ }

Figura 110.

.

Figura 111.

Page 84: Material_CursoDeIntroduçãoaProgramação

Laços

repetir (3) { }

repetir { }

repetirEnquanto ( ){ }

sair

Figura 112.

Page 85: Material_CursoDeIntroduçãoaProgramação

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 de Controle. Disponível em: <http://cae.ucb.br/conteudo/programar/algoritmobsi/new_estruturadecontrolebsi.html>. Acesso em: 10 set. 2013. Estrutura de repetição. Disponível em: <http://www.slideshare.net/edvanmateo10/50978145-algoritmosexerciciosresolvidos>. Acesso em 10 set. 2013. Estrutura Sequencial. Disponível em: <http://pt.scribd.com/doc/50982387/18/Estrutura-Sequencial>. Acesso em: 10 set. 2013. 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. Disponível em: <http://clickjogos.uol.com.br/Jogos-online/Puzzle/Light-Bot/>. Acesso em: 02 de Outubro de 2013. 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.

Page 86: Material_CursoDeIntroduçãoaProgramação

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 em: <http://www.baixaki.com.br/download/RoboMIND.htm>. Acesso em: 01 de Outubro de 2013. 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/

Page 87: Material_CursoDeIntroduçãoaProgramação

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.jpg

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

Page 88: Material_CursoDeIntroduçãoaProgramação

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: 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 67:http://gartic.uol.com.br/lucaslino/desenho-livre/porta

Figura 68: Mapa do RoboMindfindspot.irobo

Page 89: Material_CursoDeIntroduçãoaProgramação

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

Page 90: Material_CursoDeIntroduçãoaProgramação

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