miten C -kielellä saa tehtyä desimaali-binääri muunnos ohjelma väsäyksen?? yksinkertaisesti! EI C !!
C -kielellä
idiootti
71195
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Turvaa tilisi vahvistamalla puhelinnumerosi. Voit silloin palauttaa unohtuneen salasanan tekstiviestillä.
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 7
Vanhimmat
Hyvä ville.. Vitun ääliö...
1. laske luvun jakojäännös 2:lla. saat vähitenmerkitsevän bitin (0/1)
2. jaa alkup. luku 2:lla (huom! kokonaisluku, ei desimaaleja)
3. toista kohdasta 1, kunnes alkup. luku=0
int bitti;
int luku=123;
do{
bitti=luku%2;
printf("%d",bitti);
luku/=2;
}while (luku>0);
Tuossa erittäin karusti. Bitit tulostuvat väärässä järjestyksessä, ts. vähitenmerkitsevä vas. jne.
En testannut, mutta luulis toimivan. Hoppas... ;)
Jaa heh olitkin pistänyt jo paremmat ohjeet.. tätä se on kun avaa jonkun viestin ja sitten tekee muuta ja kirjoittaa vastauksen ;)
näin on ittellenikin käynyt erinäisiä kertoja. No, jos ei muuta, niin tuleepahan stereona ;)
#include
void bin(int luku)
{
if (luku>0){
bin(luku/2);
cout
Hyvä olis aloittaa vaikka selvittämällä itselle miten kyseinen muunnos tapahtuu.
Vihjeenä vähennä luvusta kakkosen potensseja ylhäältä alaspäin. Jos kyseinen potenssi mahtuu saat kyseisen bitin arvoksi 1, jos ei saat 0. Tämän jälkeen vähennät luvusta tämän kakkosen potenssin jos se mahtui ja testaat yhtä pienemmällä kakkosen potenssilla..
// Ei varmaan selittelyjä kaipaa ;)
void nayta_bitit(int luku) {
char i;
for(i = sizeof(luku)*8 - 1; i >= 0; i--)
putchar((luku >> i) & 1 == 1 ? '1' : '0');
putchar('\n');
}