Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //popravi q dokato ne vuvede sledvasht znak,da chete numbers (789) go vzima v tozi sluchai kato 7 i 8
- function solve() {
- let sum = 0;
- let firstNumber
- let secondNumber
- let operand = ""
- let operations = {
- "+": (firstNumber, secondNumber) => { return firstNumber + secondNumber },
- "-": (firstNumber, secondNumber) => { return firstNumber - secondNumber },
- "*": (firstNumber, secondNumber) => { return firstNumber * secondNumber },
- "/": (firstNumber, secondNumber) => { return firstNumber / secondNumber },
- }
- let expressionOutput = document.getElementById("expressionOutput")
- let resultOutput = document.getElementById("resultOutput")
- let clearButton=document.getElementsByClassName("clear")[0]
- clearButton.addEventListener("click",clear)
- Array.from(document.getElementsByClassName("keys")).map(x => x.addEventListener("click", function findResult(e) {
- let element = e.target.textContent
- if(element==="C"){
- clear()
- }
- if (element === "=") {
- resultOutput.textContent = operations[operand](firstNumber, secondNumber)
- operand=""
- firstNumber=NaN;
- secondNumber=NaN;
- } else {
- expressionOutput.textContent += element
- if ("0123456789".includes(element)) {
- if (operand==="") {
- if(isNaN(firstNumber)){
- firstNumber=0;
- firstNumber += Number(element)
- }else{
- let str=firstNumber+""+element;
- firstNumber=Number(str)
- }
- } else {
- if(isNaN(secondNumber)){
- secondNumber=0;
- secondNumber +=Number(element)
- }else{
- let str =secondNumber+""+element
- secondNumber=Number(str)
- }
- }
- }else if(element==="."){
- if(operand===""){
- let str=firstNumber+"."
- firstNumber=Number(str)
- }else{
- let str=secondNumber+"."
- secondNumber=Number(str)
- }
- } else if ("/ x - . +".includes(element)) {
- switch (element) { //otdelen metod
- case "/":
- operand = "/"
- break;
- case "x":
- operand = "*"
- break;
- case "-":
- operand = "-"
- break;
- case "+":
- operand = "+"
- break;
- //dobavi . operator
- }
- }
- }
- }))
- function clear(){
- resultOutput.textContent =""
- expressionOutput.textContent=""
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement