Подсчет числа заданных букв в строке (HomeLisp)

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

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

здравствуйте можете помочь в написание программы? к примеру сколько букв "а" или букв "б" в тексте

Решение задачи: «Подсчет числа заданных букв в строке (HomeLisp)»

textual
Листинг программы
  1. (defun cnt (a s)
  2.   (loop for e across s when (eql e a) count e))
  3.  
  4. > (cnt #\a "aaaaaabbbbb")
  5. 6
  6. > (cnt #\b "aaaaaabbbbb")
  7. 5

Объяснение кода листинга программы

В данном коде определён функционал подсчёта количества заданных букв в строке.

  1. (defun cnt (a s) — функция с именем cnt, которая принимает два аргумента a и s.
  2. (loop for e across s when (eql e a) count e) — это тело функции, которое состоит из цикла loop.
  3. В цикле происходит итерация по каждому символу строки s.
  4. Когда встречается символ, который равен аргументу a, то этот символ увеличивается на единицу.
  5. Результатом работы функции является количество заданных букв в строке. Пример использования функции:

    (cnt #\a aaaaaabbbbb) 6 В этом примере мы вызываем функцию cnt с аргументом #\a (задаём символ 'a') и строкой aaaaaabbbbb (строка из 10 символов 'a' и 10 символов 'b'). Функция проходит по каждому символу строки и считает количество символов 'a'. Результатом выполнения функции будет число 6, так как в строке было 6 символов 'a'. (cnt #\b aaaaaabbbbb) 5 В этом примере мы вызываем функцию cnt с аргументом #\b (задаём символ 'b') и той же строкой aaaaaabbbbb. Функция проходит по каждому символу строки и считает количество символов 'b'. Результатом выполнения функции будет число 5, так как в строке было 5 символов 'b'.

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


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

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

7   голосов , оценка 4.429 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы