Подсчитать сколько раз встречается каждая буква - Lisp

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуйста с задачкой. Заранее спасибо Дана строка текста. Подсчитать, сколько раз встречается каждая буква в этой строке. Вывести результаты в форме «буква: количество» через пробел

Например:

если дано "hello world", ответом будет "h:1 e:1 l:3 o:2 w:1 r:1 d:1".

Решение задачи: «Подсчитать сколько раз встречается каждая буква»

textual
Листинг программы
(defun freq (txt)
  (let ((arr (replicate 0 256))
        (res ""))
    (iter (for a in-string txt)
      (let* ((p (strAsc a))
             (pp (+ p 1)) 
             (z (+ 1 (getEl arr pp))))
            (putEl arr pp z))) 
    (iter (for i in arr) (for j from 0 to 255)
          (if (> i 0) (setq res (strCat res (strChr j) ": " (fix2str i) " "))))
    res ))

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.111 из 5
Похожие ответы