Mudanças entre as edições de "Oficina de Scratch 2"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 46: Linha 46:
 
#Implementar uma função para listar todos os nomesque começam com um determinado caracter;
 
#Implementar uma função para listar todos os nomesque começam com um determinado caracter;
 
#Implementar uma função que permita editar o telefone de um nome já cadastrado.
 
#Implementar uma função que permita editar o telefone de um nome já cadastrado.
 +
 +
{{ENGTELECO}}

Edição das 08h30min de 2 de maio de 2012

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