Haskell programlamada oldukça yeniyim ve bu hatayı kodumda neden aldığımı anlamakta zorlanıyorum. aşağıdaki gibiHaskell: "i" karakterinde dize/karakter değişkeni içinde kelime hatası hatası
Benim sorun i ifade edilebilir herhangi bir pozitif tam sayı k 2 kez tek bir sayısının bir güç olarak, yani tek i = 2^n * k gibi. Biz 2'nin üssü olarak adlandırıyoruz. Örneğin, 40'ta 2'nin üssü 3'tür (çünkü 40 = 2^3 * 5), 42'de 2'nin üssü 1'dir. Eğer kendisinin tek olması durumunda, n sıfırdır. Öte yandan, ben bile, bu 2 ile bölünebilir anlamına gelir ise, argümanında 2 üssü nding için bir fonksiyon exponentOfTwo yazın.
Ben psuedocode anlamak ve oldukça basit görünüyor: yinelemeli 2 ile i bölmek sonuç garip kadar bölünme olur sayısıdır burada n
benim kod (satır 31-32) 'dir:
hatasını alıyorumexponentOfTwo :: Int -> Int
exponentOfTwo i = if odd i then 0 else 1 + exponentOfTwo (i 'div' 2)
"dizesinde sözcük hata/karakterde sabit karakter 'i'" satırındaki 32 sütun üzerinde 62.
her yerde ve şimdiye kadar bu hataya bir çözüm ararken denedim Hiç şansım olmadı.
Oh, bu kolay bir düzeltme oldu, şimdi aptal hissediyorum. Bunun böyle olması gerektiğini hiç bilmiyordum. Çok teşekkür ederim! – Gus