Código :
stop();
//*****************************************************
//0º- Inizializar variables
//*****************************************************
/* Operandos */
var a;
var b;
var c;
// Operaciones
var Operando = 0;
/* Suma=1; Resta=2; Multiplicación=3; División = 4 */
var OperaciónSC = false;
var OperaciónSC2 = false;
var OperaciónC = false;
var Operación_Completa = false;
var OOC = false;
Texto.restrict = "0-9 .";
Texto.maxChars = 15;
//****************************************************
//1º- Programa
//****************************************************
this.onEnterFrame = function() {
Cálculo.call();
if (OperaciónSC == true) {
OperaciónSemiCompleta.call();
}
if (OperaciónSC2 == true) {
OperaciónSemiCompleta2.call();
}
if (Operación_Completa == true) {
Operación.call();
}
if (OOC) {
Completa.call();
}
};
//*****************************************************
//2º- Funciones
//*****************************************************
/* 1º- Cálculo */
Cálculo = function () {
if (Operando == 0) {
if (Key.isDown(107)) {
Operando = 1;
}
if (Key.isDown(109)) {
Operando = 2;
}
if (Key.isDown(106)) {
Operando = 3;
}
if (Key.isDown(111)) {
Operando = 4;
}
if (Operando != 0) {
OperaciónSC = true;
}
}
};
/* 2º-Operación Semi Completa 1 y 2 */
OperaciónSemiCompleta = function () {
if(OperaciónSC == true){
a = Texto.text;
Texto.text = "";
OperaciónSC = false;
OperaciónSC2 = true;
}
};
OperaciónSemiCompleta2 = function () {
if (Key.isDown(Key.ENTER)) {
OperaciónC = true;
b = Texto.text;
Texto.text = "";
Operación_Completa = true;
OperaciónSC2 = false;
}
};
Operación = function () {
if (Operando == 1) {
c = a += b; // AQUÍ ESTÁ EL PROBLEMA (CREO)
Operando = 0;
Texto.text = c;
}
if (Operando == 2) {
c = a -= b;
Operando = 0;
Texto.text = c;
}
if (Operando == 3) {
c = a*= b;
Operando = 0;
Texto.text = c;
}
if (Operando == 4) {
c = a /= b;
Operando = 0;
Texto.text = c;
}
if(Operando == 0){
OOC = true;
}
};
Completa = function () {
Texto.text = c;
OOC = false;
OperaciónSC = false;
Operación_Completa = false;
Operando = 0;
};Bueno, ese es el problema, depende de la tecla de operación que pulsas cambia una variable (Operando) que después determina que tiene que hacer con a y b para dar c (El resultado vamos), y me funciona perfectamente con todas las operaciones menos con la suma. Al parecer no suma a y b, si no que pone primero a y luego la b, con lo que si sumas 2 y 2 tendras dos preciosos patitos (Como en el colegio
¿En qué falla? ¿Qué debería poner para que sumara a y b?
