Karel o Robô

Karel o Robô Logo

Tabela de conteúdo


Karel é o nome de um hipotético robô utilizado no livro de Richard E. Pattis (external link), Karel the Robot, A Gentle Introduction to the Art of Programming (Karel o Robô, Uma Introdução Suave à Arte da Programação - ainda sem tradução para o português) para ensinar lógica de programação aos seus alunos da Universidade de Carnegie Mellon (external link), na Pensilvânia. A motivação principal de Pattis foi a de criar um método de ensino que evitasse que o estudante inicial de computação tivesse que se ocupar das complexidades de uma linguagem real de programação (como Java? ou Visual Basic) e se concentrasse simplesmente na lógica de programação.

1. O Mundo de Karel


Karel vive num mundo muito simples: um tabuleiro com 'x' linhas por 'y' colunas. Neste mundo, podem existir dois tipos de objetos: muros (que são intransponíveis para Karel) e sinalizadores (pequenos objetos que emitem "beeps" e são, por isso, chamados de "beepers" no livro).

2. As instruções de Karel


Karel possui um número pequeno de instruções. Basicamente ele pode fazer cinco coisas:

  • mover-se para frente - move
  • virar à esquerda - turnleft
  • pegar beeper - pickbeeper
  • colocar beeper - putbeeper
  • desligar-se - turnoff

E o programador pode valer-se de três estruturas de controle de fluxo:
  • se - if
  • enquanto - while
  • repetir - iterate

A partir desses comandos fundamentais, instruções mais complexas são produzidas.

Um exemplo de código

BEGINNING-OF-PROGRAM
DEFINE turnright AS
BEGIN
turnleft;
turnleft;
turnleft
END
BEGINNING-OF-EXECUTION
ITERATE 3 TIMES
turnright;
move;
turnoff
END-OF-EXECUTION
END-OF-PROGRAM



3. Guido van Robot e as lições de Roger Frank



Guido van Robot (ou GvR) é um programa que implementa as regras de Karel o Robô desenvolvido em Python.

Uma vez baixado o programa (que possui versões para Linux e para Windows), podem ser seguidas as lições abaixo, que foram traduzidas pela equipe da Sílex Sistemas e são utilizadas em seus cursos de Introdução à Informática.

Baixe aqui a versão para Windows...
Use o instalador (.exe). Ele contém todos os programas necessários.
Baixe aqui a versão para Linux ...
Instale Python e PyGTK de sua distro e desempacote o GvRng tarball. para rodar: python gvrng.py

Lição 1Os primeiros passos de GuidoCriando arquivos .wld e .gvr
Lição 2Que barulho é esse?Beepers
Lição 3Vire, vire, vireInstruções sequenciais
Lição 4Mais um tijolo na paredeArquivo de mundo: paredes
Lição 5Faça a coisa certaInstruções criadas pelo usuário
Lição 6Tempos robóticosProjeto
Lição 7Mensagem de aniversárioProjeto
Lição 8DecisõesInstrução if
Lição 9Alguns ficaram para trásInstrução do
Lição 10Vamos dançarInstruções aninhadas
Lição 11Torta de maçã ou biscoitosInstruções if..else...
Lição 12Levando o lixo para foraLoops condicionais
Lição 13Viajante mundialProjeto
Lição 14Vai choverProjeto
Lição 15Um trabalho a fazerProjeto
Lição 16MerendeiraProjeto
Lição 17Serviço comunitárioProjeto
Lição 18Para onde vamos agora...Conclusão




Direitos autorais sobre as lições

Obs: Permissão é dada para copiar, distribuir e modificar estas lições segundo os termos da GNU Free Documentation License, Versão 1.2 ou qualquer outra posterior publicada pela Free Software Foundation; sem seções invariantes, sem textos de capa frontal, sem textos de capa traseira.
Copyright (c) 2003 Roger Frank
Copyright (c) 2009 Roberto Vasconcelos Novaes.
O texto completo da licença pode ser obtido em http://www.gnu.org/copyleft/fdl.html (external link)


Search Wiki Page

Páginas mais visitadas

Categorias

---> GAT

Usuários on-line

3 usuários on-line