Обработка символьных данных - Pascal (80662)
Формулировка задачи:
Я так понял эта задача решается через тип данных - string. но само действие программы я вобще не понимаю. кому не сложно помогите разобраться с этой задачей.
Разделить заданный текст на строки по символу "!", который удаляется при преобразовании текста.
Решение задачи: «Обработка символьных данных»
textual
Листинг программы
var s, t: string;
i: integer;
begin
writeln('Enter string with exclamation marks:');
readln(s);
writeln('String segmented on "!" delimiter:');
t := '';
for i := 1 to length(s) do
if s[i] = '!'
then begin
writeln(t);
t := ''
end
else t := t + s[i];
if length(t) > 0 then writeln(t);
readln
end.
Объяснение кода листинга программы
- Объявляются переменные:
s- для хранения введенной пользователем строкиt- для хранения частей строки, разделенных символом '!'i- для использования как счетчика в цикле
- Выводится на экран текст
Enter string with exclamation marks:и пользователь вводит строку - Выводится на экран текст
String segmented on!delimiter: - Переменной
tприсваивается пустая строка - В цикле от 1 до длины строки
sпроверяется каждый символ:- Если символ равен '!', то на экран выводится содержимое переменной
t, затем переменнойtприсваивается пустая строка - В противном случае символ добавляется к переменной
t
- Если символ равен '!', то на экран выводится содержимое переменной
- После завершения цикла проверяется, если длина переменной
tбольше 0, то содержимоеtвыводится на экран - Программа ожидает нажатия клавиши перед завершением.