I have managed to solve the calculations however i am having a problem with my decimal places. It only lets me input it with the first number so i need it to work with the second number however i am not entirely sure that it calculates as a decimal. When i try 5.2 + 4 it outputs as a whole number instead 56. Here is the code i have:


Actionscript Code:
import flash.events.MouseEvent;
 
var btn:Array = new Array();
for (var i = 0; i < 10; i++) {
    var myBtn:Btn = new Btn();
    myBtn.y = 15;
    myBtn.x = i * 100 + 15;
    myBtn.width = 48;
    myBtn.height = 48;
    myBtn.buttonMode=true;
    myBtn.mouseChildren=false;
    myBtn.num=Number(i);
    myBtn.caption.text=String(i);
    addChild(myBtn);
    btn.push(myBtn);
    myBtn.addEventListener(MouseEvent.CLICK,pressNumber);
}
//EVENT TO ADD NUMBERS TO DISPLAY                                       ;
 
btn[0].y += 370;
btn[0].x += 10;

btn[1].y += 310;
btn[1].x += -90;

btn[2].y += 310;
btn[2].x += -130;

btn[3].y += 310;
btn[3].x += -170;

btn[4].y += 250;
btn[4].x += -390;

btn[5].y += 250;
btn[5].x += -430;

btn[6].y += 250;
btn[6].x += -470;

btn[7].y += 190;
btn[7].x += -690;

btn[8].y += 190;
btn[8].x += -730;

btn[9].y += 190;
btn[9].x += -770;

//OPERATORS//
//OPERATORS//
var operatorSelected:Boolean;
var operate:Array=new Array("÷","x","-","+");
var operators:Array = new Array();
for (var io:int = 0; io < 4; io++) {
    var opBtn:Btn_operator = new Btn_operator();
    opBtn.width = 48;
    opBtn.height = 48;
    opBtn.buttonMode=true;
    opBtn.mouseChildren=false;
    opBtn.op=Number(operators);
    addChild(opBtn);
    operators.push(opBtn);
    opBtn.addEventListener(MouseEvent.CLICK, pressOperator);
}
//EVENT TO ADD OPERATORS TO DISPLAY;

operators[0].y += 383;
operators[0].x += 198;
operators[0].caption_op.text = String("/");

operators[1].y += 323;
operators[1].x += 198;
operators[1].caption_op.text = String("*");

operators[2].y += 263;
operators[2].x += 198;
operators[2].caption_op.text = String("-");

operators[3].y += 203;
operators[3].x += 198;
operators[3].caption_op.text = String("+");

/*operators[4].y += 263;
operators[4].x += 256;
operators[4].caption_op.text = String("-/+");*/




//ADD DOT
var dot:Btn_dot = new Btn_dot();
    dot.width = 48;
    dot.height = 48;
    dot.buttonMode = true;
    dot.mouseChildren = false;
    dot.caption_op.text = String (".");
    addChild(dot);

dot.y += 383;
dot.x += 78;
dot.addEventListener(MouseEvent.CLICK, addDot);//EVENT TO ADD DOT TO DISPLAY

//BACKSPACE
var goBack:Btn_backspace = new Btn_backspace();
    goBack.width = 48;
    goBack.height = 48;
    goBack.buttonMode = true;
    goBack.mouseChildren = false;
    goBack.caption_op.text = String ("<--");
    addChild(goBack);

goBack.y += 203;
goBack.x += 256;
goBack.addEventListener(MouseEvent.CLICK, backSpace);//EVENT TO GO BACK SPACE IN DISPLAY

//clearAll
var clearAll:Btn_clear = new Btn_clear();
    clearAll.width = 48;
    clearAll.height = 48;
    clearAll.buttonMode = true;
    clearAll.mouseChildren = false;
    clearAll.caption_op.text = String ("C");
    addChild(clearAll);

clearAll.y += 323;
clearAll.x += 256;
clearAll.addEventListener(MouseEvent.CLICK, clearFields);//EVENT TO GO BACK SPACE IN DISPLAY



//EQUALS
var equals:Btn_equals = new Btn_equals();
equals.width = 48;
equals.height = 48;
equals.buttonMode=true;
equals.mouseChildren=false;
equals.caption_op.text=String("=");
addChild(equals);
   
equals.y += 383;
equals.x += 138;
equals.addEventListener(MouseEvent.CLICK, performEquals);
//EVENT TO CALCULATE


//VARIABLE HANDLE OPERATION NOT BUTTON
var operates:String;

//HANDLE FIRST AND SECOND VALUE
var num1:Number;
var num2:Number;

var num1S:String="";
var num2S:String="";

var currentNumber:String="";
function pressNumber(e:MouseEvent):void {
    display_txt.appendText(e.currentTarget.num);
    if (operatorSelected) {
        num2S+=e.currentTarget.num;
        num2=Number(num2S);
    } else {
        num1S+=e.currentTarget.num;
        num1=Number(num1S);
    }
}


//DISPLAY OPERATORS
function pressOperator(event:MouseEvent):void {
    operatorSelected = true;
    operates=operate[operators.indexOf(event.target)];
    display_txt.appendText(operate[operators.indexOf(event.target)]);
    trace(operate[operators.indexOf(event.target)]);
}

//CLEARS DISPLAY AREA
function clearFields(event:MouseEvent):void{
    display_txt.text = "";
    answer_txt.text = "";
    num1=NaN;
    num2=NaN;
    }

//ADDS DECIMAL PLACE
function addDot(event:MouseEvent):void{
    if(event.currentTarget.num == Number(display_txt.text))
    {
    display_txt.text = "0";
    }
    if (display_txt.text.indexOf(".")==-1){
        display_txt.appendText(".");

    }
   
    }
//BACKSPACE DISPLAY AREA
function backSpace(e:MouseEvent):void{
    var temp_str:String = display_txt.text;
    display_txt.text = temp_str.substr(0, (temp_str.length-1)); // Get rid of last character in the string, which in this case is the phantom \r or \n character
}

var devideZero:Boolean;
function performCalculation():void {
    operatorSelected = false;
    switch (operates) {
        case "÷" :
            if(num2 != 0) {
            num1 /= num2;
            }else{
            answer_txt.text = "Cannot devide by zero";
     devideZero = true;
     }
            break;
        case "x" :
            num1*=num2;
            break;
        case "-" :
            num1-=num2;
            break;
        case "+" :
            num1+=num2;
            break;
        default :
            break;
    }
}
 
function performEquals(e:MouseEvent):void {
    num1S="";
    num2S="";
     performCalculation();
     answer_txt.text=num1.toPrecision(2);
    trace(num1.toPrecision(2));//traces
    if(!devideZero){
    answer_txt.text=String(num1);
    }
    num2 = NaN;
}