
Uma expressão pode ser composta de variáveis, propriedades, métodos, funções e operadores.
Os operadores aritméticos são:
+ adição
- subtração
* multiplicação
/ divisão
% resto da divisão
Os operadores lógicos são:
== igual
!= diferente
> maior
>= maior ou igual
- x=5+(a%2)
x recebe o valor de 5+(resto da divisão de 5 por 2), ou seja, x receberá 5 ou 6 dependendo se a for par ou ímpar. - a=Math.sqrt(Math.pow(b,2)+Math.pow(c,2))
a recebe o valor da raiz quadrada de (b ao quadrado mais c ao quadrado). Alguém reparou o teorema de Pitágoras aqui? - y=10*(x==2||x>20)
quando a gente trabalha com expressões lógicas, o verdadeiro vale 1 e o falso vale 0. Então, neste caso, y vai receber 10 se x for 2 ou se x for maior que 20; senão y recebe 0. - b=a-2
uma simples, b recebe o valor de a menos 2. - y=10*x==2||x>20
truque sujo, só tirei os parênteses. Agora y recebe 1 se x for 0.2 ou se x for maior que 20. O que mudou? Agora estou verificando se 10 multiplicado por x é 2 (ou seja, se x é igual a 0.2) ou se x for maior que 20. - a=b>0&&b<=9 a recebe 1 se b valer entre 1 e 9. Se b for menor ou igual a 0 ou se for maior que 9, então a recebe 0. Então eu poderia escrever a mesma coisa da seguinte forma: a=!(b<=0||b>9)
7 comentários:
Me lembro de quando não sabia programar. Essa coisa de variável parecia complicada, mas é mó piece of cake.
Mas tem uma coisa que de fato eu não peguei. Acho que é por que nunca prestei muito atenção em matemática... mas a seguinte equação:
y=10*x==2||x>20
quer dizer, y igual a dez multiplicado por (x==2 ou x maior que vinte?)
Como não tem parenteses, a ordem de execução fica y=((10*x)==2)||(x>20). As operações aritméticas têm prioridade em relação às lógicas. Dentre as aritméticas, segue a prioridade padrão da matemática. Dentre as logicas, as comparações têm prioridade em relacão a || e &&.
deixa eu ver se eu entendi...entao y=1 qdo x=2 ou maior que 20..é isso?
é por que esse tipo de operação para mim é novidade. Eu só uso == nos "ifs" do actionscript, tipo
if(x==20){
do something
}
Eu fiquei confuso, quanto a lógica, que me é nova. Você poderia fazer que tipo de coisa com tal equação?
com o y=10*x==2||x>20, eu poderia dizer:
if (10*x==2||x>20) {
y=1;
} else {
y=0;
}
só que o custo computacional seria muito maior. Ficaria muito mais lento.
Postar um comentário