Size: a a a

2021 February 14

D

Dmitry in Haskell Start
Спасибо, я понял какого толка это понятие.
Пока что такой подробный CS меня не интересует, потому что ещё не закончились понятия предназначенные для рук.
источник

ЕИ

Евгений Иванов... in Haskell Start
Всем привет.

Подскажите плз, как правильно такое записать
squareDigit = read . map (^2) . show
источник

IL

Ilya L. in Haskell Start
Привет!
Тебе надо разобрать число на цифры и получить сумму квадратов цифр?
источник

ЕИ

Евгений Иванов... in Haskell Start
Ilya L.
Привет!
Тебе надо разобрать число на цифры и получить сумму квадратов цифр?
Привет не сумму, но типа того.
squareDigit 9119 shouldBe 811181
источник

ЕИ

Евгений Иванов... in Haskell Start
Ilya L.
Привет!
Тебе надо разобрать число на цифры и получить сумму квадратов цифр?
конкатенация всех квадратов цифр
источник

AP

Aleksei (astynax) Pi... in Haskell Start
Евгений Иванов
Всем привет.

Подскажите плз, как правильно такое записать
squareDigit = read . map (^2) . show
как возвести в квадрат символы строки?
источник

IL

Ilya L. in Haskell Start
Если тем, чем ты ограничился, то
1. Переводим из int в строку - show
2. теперь  обратно в инт каждый символ отдельно (map что-то там)
3. теперь map в string
4. Теперь конкатенация (concat), и после если надо - то обратно в Int

Все функции ты уже знаешь
источник

AP

Aleksei (astynax) Pi... in Haskell Start
read . concatMap (show . (^?) . read) . show
источник

A

Aragaer in Haskell Start
можно избавиться от одного concat, если сделать concatMap
источник

A

Aragaer in Haskell Start
а вместо внутреннего read есть digitToInt
источник

AP

Aleksei (astynax) Pi... in Haskell Start
Есть, но тут можно было и нормально разряды получить, а не через show
источник

ЕИ

Евгений Иванов... in Haskell Start
спасибо
источник

ЕИ

Евгений Иванов... in Haskell Start
Aleksei (astynax) Pirogov
Есть, но тут можно было и нормально разряды получить, а не через show
а каким образом ?
источник

ЕИ

Евгений Иванов... in Haskell Start
это Data.Digits ?
источник

AP

Aleksei (astynax) Pi... in Haskell Start
Да хоть руками написать через divMod
источник

AP

Aleksei (astynax) Pi... in Haskell Start
> digits num = reverse . map snd . takeWhile (/= (0, 0)) . tail $ iterate (\(x, _) -> x `divMod` 10) (num, 0)
> digits 355244152
[3,5,5,2,4,4,1,5,2]
источник

AP

Aleksei (astynax) Pi... in Haskell Start
Можно и проще, наверное. Это я сходу наколхозил
источник

ЕИ

Евгений Иванов... in Haskell Start
спасибо
источник

AP

Aleksei (astynax) Pi... in Haskell Start
> digits 0 = []; digits v = let (x, y) = v `divMod` 10 in digits x ++ [y]
> digits 355244152
[3,5,5,2,4,4,1,5,2]
> digits 3552441520
[3,5,5,2,4,4,1,5,2,0]
источник

AP

Aleksei (astynax) Pi... in Haskell Start
Или так
источник