121 lines
4.3 KiB
HTML
121 lines
4.3 KiB
HTML
<html>
|
|
|
|
<!--
|
|
Nome: Mario
|
|
Cognome: Montanari
|
|
Classe: 3AIN
|
|
-->
|
|
|
|
<head>
|
|
<link rel="icon" href="itisnullobaldiniravenna.jpg" />
|
|
<link rel="stylesheet" href="styleConversioniConRadio.css" />
|
|
<title>Conversioni numeriche</title>
|
|
</head>
|
|
<body>
|
|
<h1>Conversioni tra basi numeriche</h1>
|
|
<input type="text" id="numeroDecimale" placeholder="Inserisci un numero decimale tra 0 e 255"/></br>
|
|
<input type="radio" id="numeroBinario" name="tipoConversione" value="binario" />
|
|
<label for="numeroBinario">Conversione binaria</label></br>
|
|
<input type="radio" id="numeroOttale" name="tipoConversione" value="ottale" />
|
|
<label for="numeroOttale">Conversione ottale</label></br>
|
|
<input type="radio" id="numeroEsadecimale" name="tipoConversione" value="esadecimale" />
|
|
<label for="numeroEsadecimale">Conversione esadecimale</label></br>
|
|
<button onclick="mostraScelta()">Converti</button></br></br>
|
|
<p id="scelta"></p>
|
|
<script>
|
|
function aggiornaPlaceholder() {
|
|
if (document.getElementById("C2").checked) {
|
|
document.getElementById("numeroDecimale").placeholder = "Inserisci un numero decimale tra -128 e 127";
|
|
} else {
|
|
document.getElementById("numeroDecimale").placeholder = "Inserisci un numero decimale tra 0 e 255";
|
|
}
|
|
}
|
|
|
|
function conversioneBinario() {
|
|
let numeroDecimale = document.getElementById("numeroDecimale").value;
|
|
let numeroBinario = "";
|
|
if (numeroDecimale !== "") {
|
|
if (numeroDecimale >= 0 && numeroDecimale <= 255) {
|
|
if (numeroDecimale === 0) {
|
|
numeroBinario = "0";
|
|
}
|
|
while (numeroDecimale > 0) {
|
|
numeroBinario = (numeroDecimale % 2) + numeroBinario;
|
|
numeroDecimale = Math.floor(numeroDecimale / 2);
|
|
}
|
|
} else {
|
|
window.alert("Numero non valido! Inserisci un numero compreso tra 0 e 255.");
|
|
}
|
|
} else if (numeroDecimale === "") {
|
|
window.alert("Inserisci un numero!");
|
|
}
|
|
return numeroBinario.padStart(8, "0");
|
|
}
|
|
|
|
function conversioneOttale() {
|
|
let numeroDecimale = document.getElementById("numeroDecimale").value;
|
|
let numeroBinario = "";
|
|
if (numeroDecimale !== "") {
|
|
if (numeroDecimale >= 0 && numeroDecimale <= 255) {
|
|
if (numeroDecimale === 0) {
|
|
numeroBinario = "0";
|
|
}
|
|
while (numeroDecimale > 0) {
|
|
numeroBinario = (numeroDecimale % 8) + numeroBinario;
|
|
numeroDecimale = Math.floor(numeroDecimale / 8);
|
|
}
|
|
} else {
|
|
window.alert("Numero non valido! Inserisci un numero compreso tra 0 e 255.");
|
|
}
|
|
} else if (numeroDecimale === "") {
|
|
window.alert("Inserisci un numero!");
|
|
}
|
|
return numeroBinario;
|
|
}
|
|
|
|
function conversioneEsadecimale() {
|
|
let numeroDecimale = document.getElementById("numeroDecimale").value;
|
|
let numeroEsadecimale = "";
|
|
|
|
if (numeroDecimale !== "") {
|
|
if (numeroDecimale >= 0 && numeroDecimale <= 255) {
|
|
if (numeroDecimale === 0) {
|
|
numeroEsadecimale = "0";
|
|
}
|
|
while (numeroDecimale > 0) {
|
|
let restoEsadecimale = numeroDecimale % 16;
|
|
if (restoEsadecimale === 10) {
|
|
restoEsadecimale = "A";
|
|
} else if (restoEsadecimale === 11) {
|
|
restoEsadecimale = "B";
|
|
} else if (restoEsadecimale === 12) {
|
|
restoEsadecimale = "C";
|
|
} else if (restoEsadecimale === 13) {
|
|
restoEsadecimale = "D";
|
|
} else if (restoEsadecimale === 14) {
|
|
restoEsadecimale = "E";
|
|
} else if (restoEsadecimale === 15) {
|
|
restoEsadecimale = "F";
|
|
}
|
|
numeroEsadecimale = restoEsadecimale + numeroEsadecimale;
|
|
numeroDecimale = Math.floor(Number(numeroDecimale) / 16);
|
|
}
|
|
} else {
|
|
window.alert("Numero non valido! Inserisci un numero compreso tra 0 e 255.");
|
|
}
|
|
} else if (numeroDecimale === "") {
|
|
window.alert("Inserisci un numero!");
|
|
}
|
|
return numeroEsadecimale;
|
|
}
|
|
|
|
function mostraScelta(){
|
|
let scelta = "";
|
|
if (document.getElementById('numeroBinario').checked) scelta = conversioneBinario(numeroBinario);
|
|
if (document.getElementById('numeroOttale').checked) scelta = conversioneOttale(numeroOttale);
|
|
if (document.getElementById('numeroEsadecimale').checked) scelta = conversioneEsadecimale(numeroEsadecimale);
|
|
return document.getElementById("scelta").innerText = scelta;
|
|
}
|
|
</script>
|
|
</body>
|
|
</html> |