В предложении найти слова, последовательности букв - QBasic

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

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

доброго вам времени суток подскажите как мне победить эту задачуне могу вразумить как это сделать. В заданном предложении найти слова, представляющие собой последовательности букв латинского алфавита (например, abc, nop) и подсчитать количество таких слов. Напечатать исходное предложение и количество найденных слов.

Решение задачи: «В предложении найти слова, последовательности букв»

textual
Листинг программы
CLS
INPUT "vvedite text"; a$
FOR i = 1 TO LEN(a$)
    w = q
    q = ASC(LCASE$(MID$(a$, i, 1))) - ASC("a") + 1
    IF q >= 1 AND q <= 26 THEN
        f = f + 1
        IF f >= 2 AND q - w = 1 THEN t = t + 1
        IF i = LEN(a$) AND t + 1 = f THEN k = k + 1
    ELSE
        IF t + 1 = f THEN k = k + 1
        t = 0: f = 0
    END IF
NEXT
PRINT a$
PRINT "k="; k

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

В этом коде выполняется следующая последовательность действий:

  1. Ввод текста с клавиатуры и сохранение его в переменной a$.
  2. Инициализация переменных q, w, f, t и k со значениями 0.
  3. Цикл от 1 до длины строки a$ (это значит, что цикл будет выполняться для каждого символа в строке).
  4. Внутри цикла:
    • Значение переменной q меняется на значение ASCII-кода следующего символа в строке (после преобразования в нижний регистр), увеличенное на 1.
    • Если ASCII-код символа находится в диапазоне от 'a' до 'z', то:
      • Переменная f увеличивается на 1.
      • Если переменная f больше или равна 2 и разность между текущим и предыдущим ASCII-кодами равна 1 (то есть текущий символ - это следующий символ в слове), то переменная t увеличивается на 1.
      • Если цикл выполняется для последнего символа в строке и переменная t увеличивается на 1 перед каждым увеличением переменной f на 1, то переменная k увеличивается на 1.
    • Если ASCII-код символа не находится в диапазоне от 'a' до 'z', то:
      • Если переменная t увеличивается на 1 перед каждым увеличением переменной f на 1, то переменная k увеличивается на 1.
      • Переменные t и f сбрасываются в 0.
  5. После выполнения цикла выводится исходная строка a$.
  6. Выводится значение переменной k.

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


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

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

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