Kezdőoldal » Számítástechnika » Programozás » Hogyan tudok 10-es számrendsze...

Hogyan tudok 10-es számrendszerbeli számot átírni kettes számrendszerbe haskellben?

Figyelt kérdés

Implementáld a Bin függvényt, amely visszaadja egy nemnegatív egész szám kettes számrendszerbeli számjegyeit fordított sorrendben!

Példák:

Bin 0 ==[]

Bin 1 == [1]

Bin 2 == [0,1]

Bin 10 == [0, 1, 0, 1]


Idáig jutottam a kódommal, de a rekurziónál mikor a c értéknek vissza akarom adni az elemeket az nem jó. Tudna valaki segíteni hogyan kellene ezt megoldani ?


Bin :: Integer -> [Int]

Bin 0 = []

Bin c = (x:m:xs) = x : Bin m xs

where ( a , b )= divMod c 2



2021. okt. 24. 16:57
 1/2 anonim ***** válasza:

kiszámolod az (a, b)-t de ezeket sehol nem használod fel

helyette van 3 olyan, ami sehol nincs definiálva

és egy sorban 2 "=" az nem lesz jó


b-t kellene a lista elejére fűzni, a-t pedig továbbadni a függvénynek

2021. okt. 24. 20:03
Hasznos számodra ez a válasz?
 2/2 anonim ***** válasza:

decToBin x = reverse $ decToBin' x

where

decToBin' 0 = []

decToBin' y = let (a,b) = quotRem y 2 in [b] ++ decToBin' a


Lásd:

[link]

2021. okt. 25. 08:12
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!