Oficina de Scratch 2

De MediaWiki do Campus São José
Revisão de 08h21min de 4 de maio de 2013 por Eraldo (discussão | contribs) (Variáveis do tipo lista)
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para: navegação, pesquisa

Objetivos

  • Revisão dos comandos do Scratch
  • Mensagens (sinais)
  • Variáveis do tipo lista
  • Exercícios

Revisão dos comandos do Scratch

Para obter uma descrição de cada comando do Scratch você tem três opções:

  • Sobre a janela de comandos, clique com o botão direito do mouse e escolha [Ajuda]

AjudaScratch.png

  • Você pode também ir no menu [Ajuda]->[Ajuda Rápida] onde você encontra reunidos todos os menus de ajuda.

HelpReference.png

ScratchControlBlock.png

Mensagens

Por vezes é necessário que um script envie mensagens para outros scripts. Isto pode ser realizado usando os blocos ANUNCIE msg e ANUNCIE msg ESPERE. No comando pode-se usar uma mensagem já definida ou criar uma nova mensagem. Os scripts receptores esperaram por uma mensagem usando o comando QUANDO EU OUVIR msg. O exemplo abaixo demonstra o uso. Note que o emissor da mensagem continua a execução sem esperar (se sincronizar com os receptores). Uma variação deste comando permite também que o script emissor espere que os scripts receptores se executem antes de continuar a sua execução.

Sinais.png

Variáveis do tipo lista

No scratch é possível criar listas que é uma espécie de variável capaz de armazenar uma sequência de valores. Pode-se imaginar a lista como uma sequência de caixas. Cada caixa possui um item da lista e pode ser acessada usando-se um índice (número inteiro) que serve para localizar o tem na lista.

As operações definidas sobre uma lista:

  • adicionar um elemento ao final da lista;
  • inserir um elemento em uma determinada posição da lista;
  • substituir um determinado elemento em uma certa posição;
  • acessar um determinado elemento da lista;
  • obter o número de elementos da lista;
  • verificar se uma lista contém determinado elemento.

O exemplo da agenda telefônica

No exemplo a seguir começamos a apresentar um objeto Agenda Telefônica (AgTel). A ideia é que este objeto disponibilize serviços de agenda telefônica para outros objetos. Para tanto, ele disponibiliza uma interface dem definida através de mensagens. A ideia é implementar uma especie de subrotina para cada função realizada. A função recebe parâmetros através de variáveis globais definidas como AgTelPar1 e AgTlePar2. Vamos ao exemplo:

AgendaTelefones.png

Exercícios

  1. Reimplementar a função de inserção de nome-telefone de forma a verificar se já existe o nome. Não inserir se este nome já existir;
  2. Implementar uma função para deletar (remover) um nome-telefone da agenda;
  3. Implementar uma função para listar todos os nomesque começam com um determinado caracter;
  4. Implementar uma função que permita editar o telefone de um nome já cadastrado.

Faça o download do tutorial sobre como processar strings

Para usar o objeto ProcStrings basta exportar SPRITE no menu FILE (Arquivo)


Curso de Engenharia de Telecomunicações