Посчитать сколько слов в данной строке - QBasic

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

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

Дана строка символов, непустые группы символов между пробелами считаются словами. Посчитать сколько слов в данной строке. Помогите, пожалуйста, с заданием.

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

textual
Листинг программы
  1. DECLARE SUB TEX (t AS STRING)
  2. CLS
  3. DIM t AS STRING
  4. DIM SHARED n
  5.  
  6. t = " Er  ist  ein guter  Programmist "
  7. n = 1
  8. CALL TEX(t)
  9. PRINT "N ="; n
  10. END
  11.  
  12. SUB TEX (t AS STRING)
  13.    t = LTRIM$(RTRIM$(t))
  14.    k = INSTR(t, " ")
  15.    IF k = 0 THEN EXIT SUB
  16.    t = MID$(t, k)
  17.    n = n + 1
  18.    CALL TEX(t)
  19. END SUB

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

В этом коде на языке QBasic реализуется функция подсчета количества слов в строке с помощью рекурсии. Список действий, которые выполняются в этом коде:

  1. Объявление подпрограммы TEX с одним аргументом типа строка.
  2. Инициализация переменной t значением Er ist ein Programmist.
  3. Инициализация переменной n значением 1.
  4. Вызов подпрограммы TEX с аргументом t.
  5. Печать значения переменной n. Подпрограмма TEX выполняет следующие действия:
  6. Приведение строки t к типу строка.
  7. Удаление пробелов в начале и в конце строки с помощью функций LTRIM и RTRIM.
  8. Проверка наличия пробела в строке с помощью функции INSTR. Если пробел не найден, то подпрограмма завершается.
  9. Разделение строки на две части по первому пробелу и сохранение второй части в переменной t.
  10. Увеличение значения переменной n на единицу.
  11. Рекурсивный вызов подпрограммы TEX с аргументом t. Список переменных и их значения:
  12. t — Er ist ein Programmist
  13. n — 1 Таким образом, код считает количество слов в строке, используя рекурсию и приводя строку к типу строка. Значение переменной n выводится на экран.

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


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

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

15   голосов , оценка 3.8 из 5

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

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

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