From 432f91866c53e31c0649ab7257999aa5bab82be8 Mon Sep 17 00:00:00 2001
From: Csenge Emese Ujfaluczki <ujfaluczkicsenge@localhost>
Date: Sun, 2 Mar 2025 09:39:56 +0000
Subject: [PATCH] Add szamrendszer.js

---
 szamrendszer.js | 66 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 66 insertions(+)
 create mode 100644 szamrendszer.js

diff --git a/szamrendszer.js b/szamrendszer.js
new file mode 100644
index 0000000..b1ff92b
--- /dev/null
+++ b/szamrendszer.js
@@ -0,0 +1,66 @@
+document.addEventListener("DOMContentLoaded", function () {
+     const inputValue = document.getElementById("érték");
+     const inputBase = document.getElementById("bevitel");
+     const outputBase = document.getElementById("kimenet");
+     const outputValue = document.getElementById("kiszámoltérték");
+     const convertButton = document.getElementById("számolás");
+     const swapButton = document.getElementById("felcserélés");
+ 
+     function convertNumber(value, fromBase, toBase) {
+         let decimalValue;
+         
+         // Convert input to decimal first
+         switch (fromBase) {
+             case "bináris":
+                 decimalValue = parseInt(value, 2);
+                 break;
+             case "oktális":
+                 decimalValue = parseInt(value, 8);
+                 break;
+             case "decimális":
+                 decimalValue = parseInt(value, 10);
+                 break;
+             case "hexadecimális":
+                 decimalValue = parseInt(value, 16);
+                 break;
+             default:
+                 return "Hibás bemenet";
+         }
+         
+         if (isNaN(decimalValue)) {
+             return "Érvénytelen szám";
+         }
+         
+         // Convert decimal to target base
+         switch (toBase) {
+             case "bináris":
+                 return decimalValue.toString(2);
+             case "oktális":
+                 return decimalValue.toString(8);
+             case "decimális":
+                 return decimalValue.toString(10);
+             case "hexadecimális":
+                 return decimalValue.toString(16).toUpperCase();
+             default:
+                 return "Hibás átváltás";
+         }
+     }
+ 
+     convertButton.addEventListener("click", function () {
+         const value = inputValue.value.trim();
+         const fromBase = inputBase.value;
+         const toBase = outputBase.value;
+         
+         outputValue.value = convertNumber(value, fromBase, toBase);
+     });
+ 
+     swapButton.addEventListener("click", function () {
+         const tempBase = inputBase.value;
+         inputBase.value = outputBase.value;
+         outputBase.value = tempBase;
+ 
+         const tempValue = inputValue.value;
+         inputValue.value = outputValue.value;
+         outputValue.value = tempValue;
+     });
+ });
\ No newline at end of file