Ajuda - Busca - Membros - Calendário
Versão Completa: Conhecendo o "if"
Fórum Script Brasil > Arte & Design > Flash & ActionScript > Tutoriais & Dicas - Flash & ActionScript
Raphael Machado
Quando entrei aqui no forum não sabia como usar o bendito "if", mas ai o Thelon me deu uma ajudinha.

Hoje venho aqui para a judar as pessoas a também conher o "if"

O código dele é formado da seguinte forma:

CODE
if (Condição) {
Ações
}else{
Ações
}


Agora vou dar as traduções:
If = Se
else = Senão

é paresido com o algorítmo só q em inglês.

Agora um exemplo do uso do "If":
CODE
if (campo.text="verdadeiro"){
trace("Verdadeiro!")
}else{
trace("Falso!")
}


Nesse código, ele verifica se no campo de texto chamado "campo" está escrito o texto: "verdadeiro". Se sim ele da a mensagem "Verdadeiro!", senão ele da a mensagem "Falso!".

Acho que deu para tirarem suas conclusões e dúvidas sobre o "if"!

falou, T+!
Felipe Freitas
Boa tarde, obrigado pelas respostas Raphael, através dela consegui chegar a isso:

CODE
on (press) {
    cm2 = Number(larg)*Number(comp)*Number(qtd);
    if (cm2<=500) {
        pre = Number(150);
    } else if (cm2>=501) {
        pre = Math.abs(Number((cm2-500)*Number(0.15)+Number(150))*Number(0.02)-Number((cm2-500)*Number(0.15)+Number(150)));
    }
}


Explicando:

Existem 5 campos com as seguintes Vars: larg, comp, qtd, cm2 e pre.

Quando preenchido os campos larg, comp e qtd eu aperto o botão com o código acima e ele me da dois resultado, 1 no campo cm2 de acordo com essa conta:

CODE
cm2 = Number(larg)*Number(comp)*Number(qtd);


E outro no campo pre com essa conta:

CODE
Math.abs(Number((cm2-500)*Number(0.15)+Number(150))*Number(0.02)-Number((cm2-500)*Number(0.15)+Number(150)));


Foram acrescentado alguns números necessários na conta que preciso que é subtrair 500 e depois adicionar 150.

Acima fiz o seguinte > O resultado do campo cm2 é subtraido por 500, multiplicado por 0.15, adicionando 150 e depois multiplicado por 0.02 que me dará 2% do total como resultado, como não sei como pegar o resultado e subtrair dele 2% precisei fazer isso.

Então como o resultado fica só os 2% do total preciso do total - 2% então na mesma conta fiz pegar novamente o valor do campo cm2 subtrair por 500, multiplicar por 0.15, adicionar 150.

Ficou assim: 2% do total - total, então recebo o resultado negativo, usei então
CODE
Math.abs()
para inverter negativo para positivo no campo.


AGORA O PROBLEMA


Como citei no post acima preciso de valores diferentes nas contas de acordo com o resultado do campo cm2, as linhas:

CODE
if (cm2<=500) {
        pre = Number(150);


Fazem caso cm2 seja menor igual que 500 o campo pre seja 150, até ai tudo bem, agora as linhas:

CODE
} else if (cm2>=501) {
        pre = Math.abs(Number((cm2-500)*Number(0.15)+Number(150))*Number(0.02)-Number((cm2-500)*Number(0.15)+Number(150)));


Fazem caso cm2 seja maior igual que 501 ele faça a conta que expliquei acima, em cima de 2%.

Tentei então fazer o seguinte para fazer as contas em cima de 3%, 5% etc como citado no post do tópico:

CODE
on (press) {
    cm2 = Number(larg)*Number(comp)*Number(qtd);
    if (cm2<=500) {
        pre = Number(150);
    } else if (cm2>=501) {
        pre = Math.abs(Number((cm2-500)*Number(0.15)+Number(150))*Number(0.02)-Number((cm2-500)*Number(0.15)+Number(150)));
    } else if (cm2>=1001) {
        pre = Math.abs(Number((cm2-500)*Number(0.15)+Number(150))*Number(0.03)-Number((cm2-500)*Number(0.15)+Number(150)));
    }
}


Mas não deu certo, ele continua fazendo a conta em cima dos 2% (0.02), não passa a fazer em cima dos 3% (0.03) quando cm2 é maior que 1001, o que devo mudar para acrescentar mais casos?




Obrigado desde já !
Felipe Freitas
To ficando louco com isso, postei no lugar errado, apague por favor.
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor clique aqui.
Invision Power Board © 2001-2012 Invision Power Services, Inc.