В исходной строке определить и вывести слова, которые встречаются в строке по одному разу - QBasic

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

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

В исходной строке а$ определить и вывести слова, которые встречаются в строке по одному разу.

Решение задачи: «В исходной строке определить и вывести слова, которые встречаются в строке по одному разу»

textual
Листинг программы
CLS
DIM A AS STRING
DIM A1 AS STRING
DIM A2 AS STRING
DIM B AS STRING
DIM p AS STRING
 
INPUT "A = "; A
p = " "
A = p + A + p
i = 1
 
DO
   i2 = INSTR(i + 1, A, p)
   B = MID$(A, i, i2 - i + 1)
   k = INSTR(i2, A, B)
   IF k = 0 THEN
      k1 = INSTR(A, B)
      A1 = LEFT$(A, k1)
      A2 = MID$(A, k1 + LEN(B))
      A = A1 + A2
      B = LTRIM$(RTRIM$(B))
      PRINT B
   ELSE
      DO WHILE INSTR(A, B)
         k1 = INSTR(A, B)
         A1 = LEFT$(A, k1)
         A2 = MID$(A, k1 + LEN(B))
         A = A1 + A2
      LOOP
   END IF
   i = 1
LOOP UNTIL i >= LEN(A)
 
END

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

  1. Объявлены пять переменных: A, A1, A2, B и p.
  2. Пользователю предлагается ввести строку в переменную A.
  3. Переменная p инициализируется как пробел.
  4. Строка A обрабатывается таким образом, чтобы слова, которые встречаются в ней только один раз, были выделены и выведены.
  5. Цикл начинается с i = 1, который используется для индексации каждого символа в строке A.
  6. Внутри цикла проверяется, есть ли следующий символ, который совпадает с текущим символом, умноженным на пробел. Если это так, то цикл повторяется до тех пор, пока не будет найдено уникальное совпадение.
  7. Если совпадение не найдено, то текущий символ и его следующее совпадение удаляются из строки A.
  8. Цикл продолжается до тех пор, пока i не станет равным длине строки A.
  9. Код завершается.

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


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

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

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