Наверное, один из самых простых тестов, призванный просто продемонстрировать удобство (или неудобство) работы в конкретном языке со строками.
Имеется строка заранее неизвестной длины. Желательно, чтобы она задавалась при вызове из командной строки.
Требуется: исключить из этой строки все комбинации символов «45» и получившийся результат записать на место исходной строки.
Условие: использовать только встроенные возможности языка, без внешних библиотек (кроме, может быть, ввода-вывода).
Пример на языке PL/1-KT:
test:proc(s) main;
dcl s char(*) var;
do while(index(s,'45')>0);
s=replace(s,'','45');
end while;
put data(s);
end test;
вызов test 123456 вывод S= 1236
вызов test 444555 вывод S= (пустая строка)
Используются встроенные функции работы со строками:
index — поиск номера позиции образца в строке;
replace — замена в строке образца на заданный, в данном случае пустой.
Вполне себе удобно и наглядно и всего 7 строк текста, хотя и приходится организовать цикл обработки строки из-за возможной рекурсии. Встроенная replace получается универсальной: и для замены и для удаления.