Oficina de Scratch 2

De MediaWiki do Campus São José
Revisão de 21h38min de 6 de junho de 2012 por Eraldo (discussão | contribs) (→‎Exercícios)
Ir para navegação Ir para pesquisar

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 (cadeias de caracteres). Pode-se fazer uma analogia com um vetor da matemática (n linhas com uma coluna). Um determinado elemento do vetor pode ser acessado usando-se um índice.

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


Curso de Engenharia de Telecomunicações

Faça o download do tutorial sobre como processar strings

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

[ExemploProcessamentoStrings.sb Tutorial]