diff --git a/szamrendszer.js b/szamrendszer.js
index 0e7827c..eba2ecb 100644
--- a/szamrendszer.js
+++ b/szamrendszer.js
@@ -1,20 +1,174 @@
-function convertNumber(num) {
- if (isNaN(num)) {
- return "Please enter a valid number.";
- }
-
- return {
- binary: num.toString(2),
- decimal: num.toString(10),
- hexadecimal: num.toString(16).toUpperCase()
- };
-}
-
-const number = 255;
-console.log(convertNumber(number));
-
-{
- "binary"; "11111111",
- "decimal"; "255",
- "hexadecimal"; "FF"
-}
\ No newline at end of file
+$(document).ready(function(){
+ var inputNumber = 0;
+ var selectedOption = "";
+ var answer = 0;
+
+ $("#inputNumber").keyup(function(){
+ inputNumber = $(this).val();
+ setAnswer("");
+ activeDieactiveBtn();
+ })
+ $("#fromTo").change(function(){
+ selectedOption = $(this).val();
+ activeDieactiveBtn();
+ })
+
+
+ $("#convertBtn").click(function(){
+ if(selectedOption == "decimal to binary" && inputNumber != ""){
+ answer = convertDecimalToBinary(inputNumber);
+ setAnswer(answer);
+ }else if(selectedOption == "binary to decimal" && inputNumber != ""){
+ answer = convertBinaryToDecimal(inputNumber);
+ setAnswer(answer);
+ }else if(selectedOption == "decimal to hexadecimal" && inputNumber != ""){
+ answer = convertDecimalToHexadecimal(inputNumber);
+ setAnswer(answer);
+ }else if(selectedOption == "hexadecimal to decimal" && inputNumber != ""){
+ answer = convertHexadecimalToDecimal(inputNumber);
+ setAnswer(answer);
+ }else if(selectedOption == "binary to hexadecimal" && inputNumber != ""){
+ var decimalVal = convertBinaryToDecimal(inputNumber);
+ answer = convertDecimalToHexadecimal(decimalVal);
+ setAnswer(answer);
+ }else if(selectedOption == "hexadecimal to binary" && inputNumber != ""){
+ var decimalVal = convertHexadecimalToDecimal(inputNumber);
+ answer = convertDecimalToBinary(decimalVal);
+ setAnswer(answer);
+ }else{
+ resetAll();
+ }
+ })
+
+ $("#resetBtn").click(function(){
+ resetAll();
+ })
+
+})
+
+function activeDieactiveBtn(){
+
+ var inputNumber = $("#inputNumber").val();
+ var selectedOption = $("#fromTo").val();
+
+ if(inputNumber != "" && selectedOption != ""){
+ $("#convertBtn").prop("disabled",false);
+ }else{
+ $("#convertBtn").prop("disabled",true);
+ }
+
+ if(inputNumber != "" || selectedOption != ""){
+ $("#resetBtn").prop("disabled",false);
+ }else{
+ $("#resetBtn").prop("disabled",true);
+ }
+
+}
+
+function setAnswer(answer){
+ $("#showAnswer").html(answer);
+}
+
+function resetAll(){
+ $("#convertBtn").prop("disabled",true);
+ $("#showAnswer").html("");
+ $("#inputNumber").val("");
+ $("#fromTo").val("").change();
+ $(this).prop("disabled",true);
+}
+
+
+// main functions
+function convertDecimalToBinary(inputNumber){
+ var answer = "";
+ if(!isNaN(inputNumber)){
+ inputNumber = Number(inputNumber);
+ var remainder = 0;
+ while(inputNumber != 0){
+ remainder = inputNumber % 2;
+ inputNumber = ((inputNumber - remainder) / 2);
+ answer = remainder + answer;
+ }
+ }else{
+ answer = 'This is not decimal number!';
+ }
+ return answer;
+}
+
+function convertBinaryToDecimal(inputNumber){
+ inputNumber = inputNumber.toString();
+ var numberLen = inputNumber.length;
+ var position = numberLen;
+ var answer = 0;
+ for(var i = 0; i < numberLen; i++){
+ if(inputNumber[i] == '0' || inputNumber[i] == '1'){
+ position--;
+ answer = answer + ( Number(inputNumber[i]) * Math.pow(2, position) );
+ }else{
+ answer = 'This is not binary number!';
+ }
+ }
+ return answer;
+}
+
+function convertDecimalToHexadecimal(inputNumber){
+ inputNumber = Number(inputNumber);
+ var remainder = 0;
+ var answer = "";
+ if(!isNaN(inputNumber)){
+ inputNumber = Number(inputNumber);
+ while(inputNumber != 0){
+ remainder = inputNumber % 16;
+ inputNumber = ((inputNumber - remainder) / 16);
+ if(remainder == 10){
+ answer = 'A' + answer;
+ }else if(remainder == 11){
+ answer = 'B' + answer;
+ }else if(remainder == 12){
+ answer = 'C' + answer;
+ }else if(remainder == 13){
+ answer = 'D' + answer;
+ }else if(remainder == 14){
+ answer = 'E' + answer;
+ }else if(remainder == 15){
+ answer = 'F' + answer;
+ }else{
+ answer = remainder + answer;
+ }
+ }
+ }else{
+ answer = 'This is not decimal number!';
+ }
+ return answer;
+}
+
+function convertHexadecimalToDecimal(inputNumber){
+ inputNumber = inputNumber.toString();
+ var numberLen = inputNumber.length;
+ var position = numberLen;
+ var answer = 0;
+ for(var i = 0; i < numberLen; i++){
+ var num = inputNumber[i];
+ if(num == 'A'){
+ num = 10;
+ }else if(num == 'B'){
+ num = 11;
+ }else if(num == 'C'){
+ num = 12;
+ }else if(num == 'D'){
+ num = 13;
+ }else if(num == 'E'){
+ num = 14;
+ }else if(num == 'F'){
+ num = 15;
+ }else if(num >= '0' && num <= '9'){
+ num = Number(num);
+ }else{
+ answer = 'This is not Hexadecimal number!';
+ return answer;
+ }
+ position--;
+ answer = answer + (num* Math.pow(16,position));
+ }
+ return answer;
+}
\ No newline at end of file