Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Сложение двух двоичных чисел
- private function additionNumbers(firstNumber:Array, secondNumber:Array):void{
- trace("-----------------------------------------------------start");
- trace("firstNumber before = " + firstNumber.toString());
- trace("secondNuber before = " + secondNumber.toString());
- //Contains result number
- var result:Array = [];
- //Adds 0 to empty spaces in array
- if (firstNumber.length < secondNumber.length){
- //variable contains ftist number length at first
- var n:int = firstNumber.length - 1;
- //variable contains index for first array
- var j:int = n;
- for (var i:int = secondNumber.length - 1; i >= 0; i--){
- if (i > n && j >= 0){
- firstNumber[i] = firstNumber[j];
- j--;
- } else {
- firstNumber[i] = 0;
- }
- }
- } else if (firstNumber.length > secondNumber.length) {
- //variable contains ftist number length at first
- var n:int = secondNumber.length - 1;
- //variable contains index for first array
- var j:int = n;
- for (var i:int = firstNumber.length - 1; i >= 0; i--){
- if (i > n && j >= 0){
- secondNumber[i] = secondNumber[j];
- j--;
- } else {
- secondNumber[i] = 0;
- }
- }
- }
- var increaseRank:Boolean = false;
- var tempRankArray:Array = [];
- for (var i:int = firstNumber.length - 1; i >= 0; i--){
- //Add two numbers
- var tempRez:int = firstNumber[i] + secondNumber[i];
- //Put in the ranks array 0
- //tempRankArray[i] = 0;
- //If add result more then 1
- if (tempRez > 1){
- //Maked tempRez equals 0
- tempRez = 0;
- //Put for the next rank 1 in the temp rank array
- tempRankArray[i] = 1;
- }
- //If temp rank array has 1 for the current element
- if (tempRankArray[i + 1] == 1){
- //Encriase element
- if (tempRez == 1){
- tempRez = 0;
- tempRankArray[i] = 1;
- } else {
- tempRez = 1;
- }
- }
- //Put in the array result
- result[i + 1] = tempRez;
- }
- if (!tempRankArray[0])
- result.splice(0,1);
- else
- result[0] = tempRankArray[0];
- trace("temp rank 0 = " + tempRankArray.toString());
- trace("firstNumber after = " + firstNumber.toString());
- trace("secondumber after = " + secondNumber.toString());
- trace("tempRankarray = " + tempRankArray.toString())
- trace("result = " + result);
- trace("-----------------------------------------------------end");
- }
Advertisement
Add Comment
Please, Sign In to add comment