Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

l3on4rdo

Báskara

Recommended Posts

Olá galera,

este é meu primeiro tutorial de muitos (espero :rolleyes: ) !!

 

Mãos na massa :

 

1 - Nosso flash terá apenas um keyframe !

 

1.1 - Criando os itens (campos de texto) :

 

Primeiramente precisaremos de 3 campos de texto input:

O tamanho é a gosto, mas recomendo 48 x 26.

A variável do 1º é "a" do segundo "b" e do terceiro "c".

Como sabem ( ou deveriam :blink: ?) o báskara é uma fórmula assim : "a" x² + "b" x + "c" = 0.

Então sua stage ficará + / - assim :

Imagem Postada

 

2 - Botões

É claro que, para que possamos pegar os valores precisamos de um botão...

Primeiramente crie um botão "Calcular" do modo que preferir e o instancie de "calc".

Do lado, abaixo, ou aonde achar mais conveniente crie o botão "Limpar", no qual limpará os campos caso o usuário erre algum número ou queira fazer outra função e o instancie de "limpa".

Ficará assim + / - :

Imagem Postada

 

3 - Mais campos de texto e estrutura das fórmulas

Agora vamos criar um campo de texto com mais ou menos 424 x 30 que sua variável será "msg", esse campo de texto será dinâmico.

Esse campo será responsável caso o delta seja negativo ou nos dará as 2 raízes do delta !!

Os demais campos fica difícil de explicar, vendo na img fica mais fácil.

Imagem Postada

Uma obs. após o igual (=) do primeiro -b +- √Ά/ 2a os campos do 2º são :

Imagem Postada

Lembrando que todas variáveis são minúsculas !!

 

No final, o stage estará assim :

Imagem Postada

 

4 - ActionScript

Com certeza a parte mais importante :

No 1º e único keyframe abra-o e digite o seguinte código :

CODE
calc.onRelease = function(){ /* ao pressionar o botão calc

inicia a função */

 

/* declara as variáveis, que serão os campos com os valores

de x², x e c */

var a:Number = a

var b:Number = b

var c:Number = c

 

/* calcula o delta, Math.pow eleva o b ao quadrado, e

segundo a fórmula Ά= b² - 4 x a x c */

delta = Math.pow(b,2) - (4*a*c);

/* caso o delta seja igual a zera, o campo msg nos diz que

delta é igual a zero :) */

if(delta == 0){

x1 = (-b + Math.sqrt(delta)) / (2*a);

msg = "O delta é Igual a zero, a única solução é "+x1+" !!";

x2 = "";

aa = (2*a)

}else{

/* caso o delta seja negativo, não existem raízes e o campo

msg no informa */

if(delta < 0){

msg = "O delta é negativo, não há raízes !";

/* caso não seja calcula as raízes, x1 e x2 */

}else{

/* segundo a fórmula x1 = -b + √Ά/ 2a

e x2 = -b - √Ά/ 2a, Math.sqrt pega a raíz de delta */

x1 = (-b + Math.sqrt(delta)) / (2*a);

x2 = (-b - Math.sqrt(delta)) / (2*a);

aa = (2*a)

bb = Math.pow(b,2);

/* Após pegar as raízes manda pro campo msg o valor abaixo */

msg = "As raízes são : "+x1 +" e "+x2;

} // fecha else do cálculo

} // fecha else 2 do cálculo

} // fecha função calc

//botao "limpa"

limpa.onRelease = function(){ /* ao pressionar o botão limpa

inicia a função */

/* os "" significam que os campos serão limpos, ou seja,

ficarão sem valor nenhum */

a = "";

b = "";

c = "";

msg = "";

x1 = "";

x2 = "";

delta = "";

} // fecha a função limpa

É isso galera, espero que entendam e qualquer coisa postem aew !!

 

 

Abraços

 

Léo

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.