Untitled
unknown
c_cpp
2 years ago
801 B
14
Indexable
#include <stdio.h>
#include <math.h>
int main()
{
int num=30;
int bit_count = 0; //Rappresenta il numero di bit necessari
//scanf("%d", &num);
//Caso speciale per 0
if (num == 0)
{
printf("0");
return 0;
}
//Determino quanti bit sono necessari
int temp = num;
while(temp > 0)
{
temp = temp/2;
bit_count++;
}
//Stampo i bit dalla fine all'inizio
int i;
int potenza_di_2;
for(i = bit_count - 1; i>=0; i--)
{
potenza_di_2 = pow(2, i);
if(num >= potenza_di_2)
{
printf("1");
num = num - potenza_di_2; //Sottraggo il valore di potenza_di_2
}
else
{
printf("0");
}
}
return 0;
}
Editor is loading...
Leave a Comment