В исходной строке определить и вывести слова, которые встречаются в строке по одному разу - 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
Объяснение кода листинга программы
- Объявлены пять переменных: A, A1, A2, B и p.
- Пользователю предлагается ввести строку в переменную A.
- Переменная p инициализируется как пробел.
- Строка A обрабатывается таким образом, чтобы слова, которые встречаются в ней только один раз, были выделены и выведены.
- Цикл начинается с i = 1, который используется для индексации каждого символа в строке A.
- Внутри цикла проверяется, есть ли следующий символ, который совпадает с текущим символом, умноженным на пробел. Если это так, то цикл повторяется до тех пор, пока не будет найдено уникальное совпадение.
- Если совпадение не найдено, то текущий символ и его следующее совпадение удаляются из строки A.
- Цикл продолжается до тех пор, пока i не станет равным длине строки A.
- Код завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д