'variation of BASIC example w$="aebdef" z$="cacbc" print lcs$(w$,z$) 'output: 'ab wait FUNCTION lcs$(a$, b$) IF LEN(a$) = 0 OR LEN(b$) = 0 THEN lcs$ = "" exit function end if IF RIGHT$(a$, 1) = RIGHT$(b$, 1) THEN lcs$ = lcs$(LEFT$(a$, LEN(a$) - 1), LEFT$(b$, LEN(b$) - 1)) + RIGHT$(a$, 1) exit function ELSE x$ = lcs$(a$, LEFT$(b$, LEN(b$) - 1)) y$ = lcs$(LEFT$(a$, LEN(a$) - 1), b$) IF LEN(x$) > LEN(y$) THEN lcs$ = x$ exit function ELSE lcs$ = y$ exit function END IF END IF END FUNCTION