DAY 9: Binary Calculator | Hackerrank Solution | 10 Days Of Javascript
DAY 9: Binary Calculator
Hackerrank Solution 10 Days Of Javascript
Objective
In this challenge, we implement a calculator that uses binary numbers. Check out the attached tutorial for learning materials.
Task
Implement a simple calculator that performs the following operations on binary numbers: addition, subtraction, multiplication, and division. Note that division operation must be integer division only; for example, , , and .
The calculator's initial state must look like this:
- Element IDs. Each element in the document must have an
id
, specified below:innerHTML
id
Description/Behavior res
Contains the result of button presses. btns
A button container that displays all eight calculator buttons. 0
btn0
A button expressing binary digit . 1
btn1
A button expressing binary digit . C
btnClr
A button to clear the contents of . =
btnEql
A button to evaluate the contents of the expression in . +
btnSum
A button for the addition operation. -
btnSub
A button for the subtraction operation. *
btnMul
A button for the multiplication operation. /
btnDiv
A button for the integer division operation. - Styling. The document's elements must have the following styles:
body
has awidth
of33%
.res
has abackground-color
oflightgray
, aborder
that issolid
, aheight
of48px
, and afont-size
of20px
.btn0
andbtn1
have abackground-color
oflightgreen
and acolor
ofbrown
.btnClr
andbtnEql
have abackground-color
ofdarkgreen
and acolor
ofwhite
.btnSum
,btnSub
,btnMul
, andbtnDiv
have abackground-color
ofblack
, acolor
ofred
.- All the buttons in
btns
have awidth
of25%
, aheight
of36px
, afont-size
of18px
,margin
of0px
, andfloat
valueleft
.
The
.js
and .css
files are in different directories, so use the link tag to provide the CSS file path and the script tag to provide the JS file path:<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="css/binaryCalculator.css" type="text/css">
</head>
<body>
<script src="js/binaryCalculator.js" type="text/javascript"></script>
</body>
</html>
Constraints
- All expressions in the test dataset are entered in the form , where is the first binary number, is the second binary number, and is in the set .
- Both operands will always be positive integers when converted from base- to base-.
- All expressions will be valid.
Explanation
Consider the following sequence of button clicks:
Before pressing the button, the result div looks like this:
Before pressing the button, the result div looks like this:
After pressing the button to evaluate our expression, the result div looks like this:
Notice that , , and , so our calculator evaluated the expression correctly.
Now, let's consider our next sequence of button clicks as:
Before pressing the button, the result div looks like this:
Before pressing the button, the result div looks like this:
After pressing the button to evaluate our expression, the result div looks like this:
Consider the next sequence of button clicks as:
The result div looks like this:
The result div looks like this:
HTML
CSS
JAVASCRIPT
SHARE
If you find this useful, please share with your friends and Community.
CODE TOGETHER..GROW TOGETHER.
CODE TOGETHER..GROW TOGETHER.
Newer Posts
Newer Posts
Older Posts
Older Posts
Comments