Δημοσιεύτηκε: 29 Αύγ 2011, 23:20
από migf1
Και χωρίς αναδρομή, η nbits() πάει κάπως έτσι...

Κώδικας: Επιλογή όλων

...
typedef unsigned int NType; // αλλάξτε το int με οποιονδήποτε τύπο ακεραίου
...
// ------------------------------------------------------------------------------------------------
int nbits( NType n )
{
register int i=0;
for (; n; i++)
n >>= 1;
return i;
}
// ------------------------------------------------------------------------------------------------
int main ( ... )
{
NType n = 256; // αλλάξτε με οποιονδήποτε θετικό ακέραιο
...
printf( "%d binary bits needed for %d\n\n", nbits(n), n );

return 0;
}