English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Conversione binario-decimale e viceversa in Python

Data un numero decimale e un numero binario, il nostro compito è convertire il numero decimale in numero binario e viceversa.

Algoritmo

Bintodec()

Passo1: Inserisci il numero binario.
Passo2: Successivamente, prendi la lunghezza del numero binario.
Passo3: Utilizzando un ciclo for convertiamo il binario in un numero decimale.
Proprio come se il numero binario è 1111, il calcolo sarebbe
1*2**3+1*2**2+1*2**1+1*2**0 = 15
Passo4: Visualizza il numero.

Dectobin()

Passo1: Inserisci il numero decimale.
Passo2: Utilizzando un ciclo while
*Dividi il numero per 2. Trova sia il residuo che il quoziente. Prendi un'altra variabile inizializzata con 1.
Ora il residuo sarà moltiplicato con questa variabile e aggiunto al numero finale di uscita. Questa variabile sarà incrementata di 1.
*Il primo residuo è l'ultimo numero della sequenza.
Passo3: Visualizza il valore.

Esempio di codice

print("*****************************************************")
print("CONVERSIONE DECIMALE A BINARIA E BINARIA A DECIMALE")
print("*****************************************************")
print(" Per Decimale a Binario... Premi 1.")
print(" Per Binario a Decimale... Premi 2")
print("*****************************************************")
my_choice=int(input("Inserisci la tua scelta: "))
if my_choice==1:
i=1
s=0
my_dec=int(input("Inserisci il numero decimale da convertire: "))
while my_dec>0:
   rem=int(my_dec%2)
   s=s+(i*rem)
   my_dec=int(my_dec/2)
   i=i*10
   print("Il numero binario del numero fornito è ",s,'.")
else:
   my_bin=input('Inserisci il numero binario da convertire: ')
   n=len(my_bin)
   res=0
for i in range(1,n+1):
   res=res+int(my_bin[i-1])*2**(n-i)
print("Il decimale del numero binario fornito è ",res,'.")
print("******************************************************")

Risultato di output

*****************************************************
CONVERSIONE DA DECIMALE A BINARIO E DA BINARIO A DECIMALE
*****************************************************
print(" Per Decimale a Binario... Premi 1.")
print(" Per Binario a Decimale... Premi 2")
*****************************************************
Inserisci la tua scelta: 1
Inserisci il decimale da convertire: 15
Il numero binario del numero fornito è 1111.
******************************************************
*****************************************************
CONVERSIONE DA DECIMALE A BINARIO E DA BINARIO A DECIMALE
*****************************************************
Per Decimale a Binario... Premi 1.
Per Binario a Decimale... Premi 2
*****************************************************
Inserisci la tua scelta: 2
Inserisci il numero binario da convertire: 1111
Il decimale del numero binario fornito è 15.
******************************************************