Membuat Kalkulator dengan HTML,CSS,JavaScript di notepad

 Cara membuat kalkulator dengan HTML,CSS,JavaScript di Notepad


Disini saya ingin memberikan tutorial kepada teman-teman membuat kalkulator dengan html melalu notepad yang sangat mudah dan bisa diikuti oleh tema-teman

berikut langkah-langkah yang dapat teman-teman ikuti untuk cara membuat kalkulator dengan HTML,CSS,JavaSript di Notepad

langkah 1 : Buat Folder dengan nama ''calculator " lalu buka notepad

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">


<!--title digunakan untuk membuat judul dan ditampilkan di browser-->

    <title>My Calculator</title>


    <link rel="stylesheet" href="style.css">

    <script src="script.js" defer></script>

</head>

<body>


<!--digunakan untuk mendefisinikan bagian dari dokumen sehingga dapat diidentifikasi-->

    <div class="container">

        <div class="output">

            <div class="title">Calculator Cindy</div>

            <div class="overoutput"></div>

            <div class="underoutput"></div>

            <div class="tempoutput"></div>

        </div>


<!--Digunakan untuk sebuah tombol yang dapat diklik untuk menjalankan tindakan tertentu-->

        <button class="clear">Clear</button>

        <button class="delete">Delete</button>

        <button class="operation">%</button>

        <button class="operation">/</button>

        <button class="number">7</button>

        <button class="number">8</button>

        <button class="number">9</button>

        <button class="operation">x</button>

        <button class="number">4</button>

        <button class="number">5</button>

        <button class="number">6</button>

        <button class="operation">-</button>

        <button class="number">1</button>

        <button class="number">2</button>

        <button class="number">3</button>

        <button class="operation">+</button>

        <button class="number">0</button>

        <button class="number">00</button>

        <button class="number">.</button>

        <button class="result">=</button>

    </div>

</body>

</html>

langkah 2 : kemudian klik tab file di notepad > Pilih "Save as" > Buat File name "index.html" > Ubah "Save as type" menjadi "All Files" > kemudian "Save" di dalam folder "calculator".

langkah 3 : Disini kita akan membuat css agar tampilannya lebih menarik. Salin kode di bawah ini dan simpan ke folder yang sama dengan nama style.css

<!--digunakan untuk mengatur tampilan elemen seperti latar belakang, warna dan lain-lain ini adalah kerangka style untuk memperindah kalkulator kita-->

body {

    background-color: #add8e6;

    display: flex;

    justify-content: center;

    align-items: center;

  }


<!--digunakan untuk membungkus blok didalamnya, sehingga terlihat rapi terhadap ukuran layar-->

.container {

    display: grid;

    justify-content: center;

    align-content: center;

    grid-template-columns: repeat(4, 100px);

    grid-template-rows: minmax(100px, auto) repeat(5, 100px);

    min-height: 100vh;

}


<!--digunakan untuk tombol yang dapat diklik, meletakkan teks, teks tulisan, serta ukuran, latar belakang dan warna-->

button {

    cursor: pointer;

    outline: none;

    font-size: 20px;

    background-color: white;

    border: 3px solid #333;

}


<!--digunakan untuk meletakkan latar belakang dan warna-->

button:hover {

    background-color: rgba(225, 225, 225, 70);

    color: white;

}


<!--digunakan untuk mewakili hasil perhitungan -->

.output {

    grid-column: 1 / -1;

    background-color: #333;

    border-radius: 20px 20px 0 0;

    word-wrap: break-word;

    word-break: break-all;

    -ms-word-break: break-all;

    -ms-word-wrap: break-word;

}


<!--digunakan untuk memberikan warna pada colum calculator agar terlihat rapi-->

.overoutput {

    background-color: rgb(42, 101, 128);

    padding-right: 10px;

    padding: 10px;

    text-align: end;

    font-size: 20px;

    color: rgba(225, 225, 225, 100);

    min-height: 25px;

}


<!--digunakan untuk menampilkan seberapa besar tinggi dan lebar pada colum calculator-->

.tempoutput {

    background-color: #333;

    color: #fff;

    font-size: 20px;

    padding: 10px;

    min-height: 25px;

}


<!--digunakan untuk lapisan, perataan teks, ukuran huruf, tinggi minimum-->

.underoutput {

    padding: 20px;

    text-align: end;

    font-size: 30px;

    color: #66ff66;

    min-height: 50px;

}


<!-- digunakan untuk warna pada judul dalam tampilan calculator berapa ukuran dan warna apa yang ingin kita beri-->

.title {

    text-align: center;

    height: 40px;

    padding-top: 10px;

    font-size: 25px;

    color: white;

}

langkah 4 : Untuk membuat suatu fungsi kita menggunakan javascript agar tombol yang dibuat berfungsi dengan baik. Cukup salin kode di bawah ini dan simpan ke folder yang sama dengan nama app.js

<!--digunakan untuk hasil penjumlahan dan pengurangan data yang sudah kita bikin-->

const number = document.querySelectorAll('.number')

const operation = document.querySelectorAll('.operation')

const resultLast = document.querySelector('.result')

const clear = document.querySelector('.clear')

const del = document.querySelector('.delete')

const overoutput = document.querySelector('.overoutput')

const underoutput = document.querySelector('.underoutput')

const tempoutput = document.querySelector('.tempoutput')


<!--digunakan untuk mendefinisikan variabel dalam pemrograman atau dalam ekspresi matematika-->

var output1 = ''

var output2 = ''

var result = null

var operationLast = ''

var oneDot = false


<!--

number.forEach( number => {

  number.addEventListener('click', (e) => {

    if ( e.target.innerText === '.' && !oneDot) {

      oneDot = true

    } else if ( e.target.innerText === '.' && oneDot) {

      return

    }

    output2 += e.target.innerText

    underoutput.innerText = output2

  })

})


operation.forEach( (operation) => {

  operation.addEventListener('click', (e) => {

    if (!output2) return

    oneDot = false

    const operationName = e.target.innerText

    if (output1 && output2 && operationLast) {

      mathOperation()

    } else {

      result = parseFloat(output2)

    }

    clearVar(operationName)

    operationLast = operationName;

  })

})


function clearVar(name = '') {

  output1 += output2 + ' ' + name + ' '

  overoutput.innerText = output1

  underoutput.innerText = ''

  output2 = ''

  tempoutput.innerText = result

}


function mathOperation() {

  if (operationLast === "x") {

    result = parseFloat(result) * parseFloat(output2);

  } else if (operationLast === "+") {

    result = parseFloat(result) + parseFloat(output2);

  } else if (operationLast === "-") {

    result = parseFloat(result) - parseFloat(output2);

  } else if (operationLast === "/") {

    result = parseFloat(result) / parseFloat(output2);

  } else if (operationLast === "%") {

    result = parseFloat(result) % parseFloat(output2);

  }

}


resultLast.addEventListener('click', (e) => {

  if ( !output1 || !output2 ) return

  oneDot = false

  mathOperation()

  clearVar()

  underoutput.innerText = result

  tempoutput.innerText = ''

  output2 = result

  output1 = ''

})


clear.addEventListener('click', (e) => {

  underoutput.innerText = ''

  overoutput.innerText = ''

  tempoutput.innerText = ''

  output1 = ''

  output2 = ''

  result = ''

})


del.addEventListener('click', (e) => {

  underoutput.innerText = underoutput.innerText.toString().slice(0, -1)

  output2 = output2.toString().slice(0, -1)

})


window.addEventListener('keydown', (e) => {

  if (

    e.key === '0' ||

    e.key === '1' ||

    e.key === '2' ||

    e.key === '3' ||

    e.key === '4' ||

    e.key === '5' ||

    e.key === '6' ||

    e.key === '7' ||

    e.key === '8' ||

    e.key === '9' ||

    e.key === '.' 

  ) {

    clicknumber(e.key)

  } else if (

    e.key === '+' ||

    e.key === '-' ||

    e.key === '/' ||

    e.key === '%' 

   ) {

     clickoperation(e.key)

   } else if (e.key === '*') {

     clickoperation('x')

   } else if (e.key === 'Enter' || e.key === '=') {

     clickresult()

   } else if (e.key === 'Backspace') {

     clickdel()

   } else if (e.key === 'Delete') {

     clickclear()

   }

})


function clicknumber(key) {

  number.forEach((button) => {

    if (button.innerText === key) {

      button.click()

    }

  })

}


function clickoperation(key) {

  operation.forEach((button) => {

    if (button.innerText === key) {

      button.click()

    }

  })

}


function clickresult() {

  resultLast.click()

}


function clickdel() {

  del.click()

}


function clickclear() {

  clear.click()

}

Hasil Tampilan

 
Sekarang coba jalankan program dengan membuka file index.html di folder tempat Anda menyimpannya. Untuk hasilnya anda bisa melihat tampilan dari live demo dibawah ini. 




Komentar

Postingan populer dari blog ini

Membuat tipe data dan variabel dengan menggunakan notepad