Hirdetés

Új hozzászólás Aktív témák

  • kispx
    addikt

    köszönöm bár már nem kell de ha akarsz segíteni van egy másik feladat aminek az a lényege hogy most bekérek egy legfeljebb 4 jegyű számot és azt átírja 2-es számrendszerbelibe
    tehát pl beírok egy 10-est akkor ő kidobja hogy 1010
    Van egy megoldási lehetőség a tegnapihoz hasonlóan hogy kiirom hogy ha 9000-8000-7000 stb mit kell kiirnia és ugyan úgy kivonom belőle, de biztos van egyszerűbb megoldás is mert ennek az a hibája hogy ki kéne számolnom hogy a 6000 pl hogy néz ki 2 es számrendszerben és igy tovább
    a tanár azt mondta hogy bontsuk fel asszem hexadecimálisnak hívják amikor a kettes számrendszert felosztjuk 4-sével tehát: pl 011001010101 ez igy nézne ki : 0110|0101|0101|
    és akkor az x számot felbontom számjegyekre és megvizsgálom hogy ha az 1-ő számjegy 9 akkor irja ki a kettes számrendszerbeli átváltását a 9-nek tehát akkor elsőnek kiirná hogy 1001 és akkor vizsgálja a 2.3.4. elemét a számnak de szerintem ez nem jó így

    Akkor kezdjük az elejétől.

    "bekérek egy legfeljebb 4 jegyű számot"
    A legnagyobb 4 jegyű szám 9999, ami binárisan 10011100001111 (14 karakter ha jól számolom). Tehát lefoglalsz egy 14 elemű karaktertömböt, ebbe rakod a végeredményt.

    Az eljárás: (úgy mint papíron)
    bekéred a számod (legyen x)

    x-et elosztod kettővel. A maradékot (0 vagy 1-et beleírod a karaktertömbbe)
    A hányadost megint elosztod kettővel és a maradékot megint beleírod a karaktertömbbe.
    .
    .
    .
    Egészen addig csinálod míg a hányados nulla nem lesz. Végül a karaktertömböt fordítva írod ki.

    Tehát példával illusztrálva:
    x = 5
    5 / 2 == 2 (maradék 1)
    2 / 2 == 1 (maradék 0)
    1 / 2 == 0 (maradék 1)

    101

Új hozzászólás Aktív témák