Variaveis

De IFSC
Revisão de 17h42min de 17 de maio de 2022 por imported>Fargoud (→‎Operadores Matemáticos)
Ir para navegação Ir para pesquisar

Operadores Relacionais

Todo programa tem necessidade de comparar valores, por alguma razão.

Os Operadores Relacionais do Scratch servem para comparar qualquer tipo de valor.

São apenas 3, sendo acessados na categoria Operadores:

SCRATCHrelac1.png

Esses operadores mostrados são:

  • menor que (<),
  • igual a (=) e
  • maior que (>).

Cada uma destas condições terá dois valores:

*true, (que significa VERDADEIRO, em português) quando a expressão for verdadeira e,
*false, (que significa FALSO, em português) quando a expressão for falsa.

É possível fazer com eles comparações com variáveis ou números, como mostrados abaixo:


SCRATCHrelac2.png

Operadores Lógicos

Além dos operadores relacionais, existem os operadores lógicos, no Scratch.

Os operadores lógicos também servem para comparar qualquer tipo de valor.

SCRATCHlog.png

São 3:

  • e,
  • ou e
  • não.

As expressões que usam esses operadores poderão ter dois valores:

*true, (que significa VERDADEIRO, em português) quando a expressão for verdadeira e,
*false, (que significa FALSO, em português) quando a expressão for falsa.

Estas operações funcionam da seguinte maneira:

A expressão E só é verdadeira, quando as duas condições forem verdadeiras, ao mesmo tempo.
A expressão OU só é verdadeira, se pelo menos uma das condições for verdadeira, ou as duas.
A expressão NÃO é verdadeira, quando a condição for falsa; e vice-versa.

Para entendermos melhor como funciona cada um deles, vejamos esses exemplos:

Se digo “Tenho um computador e um celular”, ao afirmar isso, a palavra e indica que eu possuo os dois objetos, no caso o computador e o celular.

Se digo “Quero um computador ou um celular”, ao afirmar isso, a palavra ou indica que eu pretendo possuir apenas um dos objetos, ou o computador, ou o celular.

E se digo “Não tenho um celular”, ao afirmar isso, a palavra não comprova que eu não possuo um celular.

Assim como no caso dos operadores relacionais, os operadores lógicos mostrados são o (e), (ou) e (não).

É possível fazer com eles, comparações com variáveis ou números, como mostrados abaixo:

SCRATCHlog2.png

Variáveis

No Scratch, para se criar variáveis, acesse a categoria Variáveis, e clique no botão “CRIAR UMA VARIÁVEL” ou “CRIAR UMA LISTA”.

Depois de clicado em um dos botões, vai ser aberto uma tela que vai pedir para você dar um nome a sua variável, como mostrado abaixo:

SCRATCHvars1.png

Além disso, você deverá selecionar se ela vai ser uma variável apenas de um único componente do jogo, ou responsável por todos os objetos do jogo.

Agora, vamos ver onde se pode usar as variáveis.

Ainda no exemplo da menina, crie uma variável como mostrado acima. O nome pode ser var1, mesmo.

Note que agora ela também aparece como bloco, na Categoria "VARIÁVEIS":


SCRATCHvars2.png

Agora, localize o bloco de OPERADORES, " > 50" e insira o bloco da variável var1 a este operador.


SCRATCHvars2-0.png

Ou seja, este bloco fará a comparação entre o valor de var1 e o valor 50. Esta condição terá dois valores:

*true, (que significa VERDADEIRO, em português) quando a variável tiver valor maior que 50 e,
*false, (que significa FALSO, em português) quando a variável tiver valor menor ou igual a 50


Em seguida, adicione este bloco à condição da instrução "REPITA ATÉ QUE:". Em outras palavras, o bloco REPITA será executado enquanto var1 for menor ou igual a 50. Quando for maior, a condição passa a ser VERDADEIRA, e o bloco REPITA para.

A variável var1 ainda não tem valor inicial. É necessário incluir o bloco de CONTROLE "MUDE var1 PARA 1" logo no início do programa.

E para que a variável mude de valor, insira o bloco de CONTROLE "ADICIONE 1 A var1" dentro do bloco "REPITA ATÉ QUE". Ou seja, a cada loop, a instrução atualiza o valor da variável, somando 1.

Eu também diminui o limite da variável em 6, para que o programa não execute tantas vezes.

SCRATCHvars3-0.png

Vai ficar assim:

SCRATCHvars3.png

Operadores Matemáticos

Na categoria OPERADORES, temos também as 4 operações básicas na matemática,:

  • Adição,
  • Subtração,
  • Multiplicação e
  • Divisão.
SCRATCHmatem1.png

Caso seja necessário realizar algum cálculo em seu jogo ou animação criada, você utilizar destes operadores.

Por exemplo, veja este código:

SCRATCHmatem2.png

Teste-o para ver como funciona!

Este também funcionaria, do mesmo jeito, só que ao invés de atualizar a variável "passos" do valor 0, ao valor 500, somando de 2 em 2, faria o inverso: de 500 a 0, subtraindo de 2 em 2!

SCRATCHmatem3.png
Quantos loops serão realizados, em cada um dos códigos acima?????

Ainda nesta categoria, temos outros operadores matemáticos:

SCRATCHmatem4.png

Como funciona cada bloco:

  • RESTO DE num1 POR num2: ao realizar uma divisão, você pode precisar saber dela apenas o valor de resto, e esse bloco te ajuda exatamente nisso, capturando apenas o valor de resto de uma divisão (por exemplo, o resto da divisão de 11 por 3 é igual a 2);
  • ARREDONDAMENTO DE : quando há a necessidade de se trabalhar com números inteiros (que não possua vírgula), você pode indicar um número decimal ou variável numérica neste bloco, que ele vai te retornar apenas o valor inteiro deste número, de forma arredondada;
  • NÚMERO ALEATÓRIO ENTRE 1 e 10: este bloco serve para sortear um número, a partir de uma faixa de valores. A faixa default é com o primeiro número igual a 1 e o segundo 10. Lembrando que os números 1 e 10 podem ser substituídos por qualquer outro número ou variável numérica.

Para finalizar esta categoria, temos alguns blocos que trabalham com textos e números, sendo eles o junte olá mundo, letra 1 de mundo e letras em mundo: Como funciona cada bloco: junte olá mundo  esse bloco junta duas mensagens de texto ou variáveis textuais, formando palavras separadas como uma só frase; letra 1 de mundo  esse bloco mostra a letra, a partir do número e palavra ou variável textual indicada neste comando. Neste exemplo, ele mostra o número 1 e a palavra “mundo”, consequentemente, a letra de retorno será “m”, pois ela é a letra 1 desta palavra. Outro exemplo, seria indicar como número o valor 4 e a palavra “sorvete”, sendo a letra de retorno o “v”, que é a letra 4 desta palavra. letras em mundo  esse comando retorna o número total de letras que possuí uma palavra ou variável textual. Neste exemplo, ele retornaria o valor 5, pois a palavra “mundo” tem um total de 5 letras. Outro exemplo, baseado na palavra “sorvete”, ele retornaria o número 7, pois essa palavra tem um total de 7 letras. Há outros comandos importantes da categoria Sensores, que ainda não vimos, e falaremos brevemente sobre cada um deles. Para começar, temos em Sensores os comandos tocando em ?, tocando na cor ? e cor está tocando cor ?: Como funciona cada bloco: tocando em ?  esse comando vai fazer um comparativo, verificando se um sprite tocou em outro personagem; tocando na cor ?  esse comando vai realizar uma comparação, verificando se um sprite tocou em uma cor específica (como mostrado no exemplo, a cor roxa); cor está tocando cor ?  esse comando vai realizar uma comparação, verificando se uma cor tocou em uma outra cor (como mostrado no exemplo, se a cor lilás tocou na cor amarela). Além desses blocos, temos dois comandos que manipulam perguntas e respostas dentro do Scratch, sendo eles o pergunte e espere e resposta: Como funciona cada bloco: pergunte e espere  nesse bloco, onde há a mensagem “Qual o seu nome?”, você pode digitar qualquer pergunta, que será mostrada ao usuário, assim como vai exibir uma caixa de texto, esperando com que o usuário digite uma resposta; resposta  já este bloco, vai servir para capturar a resposta digitada, a partir da pergunta feita no bloco anterior, e realizar qualquer tipo de manipulação com esta resposta. Existem blocos também que verificam e/ou manipulam as posições x e y de um objeto inserido no Scrach, assim como aqueles que realizam comparações de distância ou de toque em teclas. Esses blocos são mouse x, mouse y, posição x de objeto1, distância até, mouse pressionado? e tecla pressionada? : Como funciona cada bloco: mouse x este bloco captura a atual posição x do mouse; mouse y este comando captura a atual posição y do mouse; posição x de objeto1  este bloco captura tanto a atual posição de x, como a de y, em um determinado objeto (sprite) mencionado; distância até  neste comando, você indica uma determinada distância entre objetos (sprites), ou entre um objeto e o ponteiro do mouse; mouse pressionado?  este bloco verifica se o botão do mouse foi pressionado ou não; tecla pressionada?  este comando verifica se uma determinada tecla do teclado foi pressionada ou não; Além destes comandos, existem mais dois desta mesma categoria, que servem especificamente para se trabalhar com tempo em um jogo, sendo eles o zere temporizador e temporizador: Como funciona cada bloco: zere temporizador  esse comando zera o valor que estiver no temporizador; temporizador  esse bloco, quando acionado, mostra na tela do jogo um cronômetro, que temporiza o tempo desde o início da execução de um game. A categoria Caneta, que ainda foi pouco utilizada, possui blocos responsáveis por fazer nosso personagem desenhar na tela. Alguns dos blocos mais simples desta categoria são o abaixe a caneta, levante a caneta, limpe e carimbe: Como funciona cada bloco: abaixe a caneta  este comando abaixa a caneta, fazendo um personagem desenhar na tela; levante a caneta  este bloco levanta a caneta, fazendo com que um personagem não desenhe na tela; limpe  este comando limpa da tela tudo o que foi desenhado anteriormente; carimbe  este bloco carimba na tela determinado objeto. Além desses comandos, existem outros que são importantes para alterar efeitos de tons e cor da caneta, sendo os blocos mude o tom da caneta por, mude o tom da caneta para, mude a cor da caneta para cor, mude a cor da caneta por e mude a cor da caneta para: Como funciona cada bloco: mude o tom da caneta por  neste bloco, você deve indicar um valor para o tom da caneta, sendo que este número vai sempre incrementar o último valor do tom da caneta; mude o tom da caneta para  neste comando, qualquer valor já dado que representa o tom da caneta, será substituído pelo número indicado no bloco para alterar sua tonalidade; mude a cor da caneta para cor  este comando muda a cor atual da caneta, para outra cor; mude a cor da caneta por  neste bloco, você deve indicar um valor para a cor da caneta, sendo que este número vai sempre incrementar o último valor da cor da caneta; mude a cor da caneta para  neste comando, qualquer valor já dado que representa a cor da caneta, será substituído pelo número indicado no bloco para alterar sua cor. Por fim, além de mudar tons e cores da caneta, é possível alterar seu tamanho, pelos blocos mude o tamanho da caneta por e mude o tamanho da caneta para: Como funciona cada bloco: mude o tamanho da caneta por  neste bloco, você deve indicar um valor para o tamanho da caneta, sendo que este número vai sempre incrementar o último valor do tamanho da caneta; mude o tamanho da caneta para  neste comando, qualquer valor já dado que representa o tamanho da caneta, será substituído pelo número indicado no bloco para alterar seu tamanho