===== Строки (String) ===== Строки нужны для работы с текстовой информацией - для вывода сообщений, хранения и обработки имён, названий, слов и т.д. ==== Строковые константы ==== ==== Строковые переменные ==== ==== Работа со строками ==== FIXME var str1, str2, str3 : string; {Обычные строки - вмещают до 255 (не 256!) символов (char)} begin str1 := 'Ответ'; str2 := ' 42'; str3 := str1 + str2; writeln(str3); end. Можно использовать "укороченные" строки, как это сделано ниже. Строки займут меньше места, но надо учитывать следующее обстоятельство. При выполнении любого присваивания строкового значения, результат автоматически усекается с конца так, чтобы войти в отведённое под строку количество символов, причём, это не считается ошибкой - за этим должен следить программист. var str4, str5, str6 : string[5]; { "Укороченные" строки - вмещают 5 символов максимум } begin str1 := 'Ответ'; str2 := ' 42'; str3 := str1 + str2; { Здесь - ошибка, которую "не заметит" компилятор! Результат будет "обрезан" до 5 символов} writeln (str3); { Здесь ошибка проявится, 42 - потеряется } writeln (str1 + str2); { Так всё будет выведено на экран полностью, но будет использована "неявная" переменная } writeln (str1, str2); { Так - тоже верно } end. ==== Процедуры и функции ==== Важнейшие функции - /ord/ и /chr/. Они служат для перевода букв в их коды (номера) и обратно. ^ Имя ^ Описание ^ Пример ^ | Chr | Перевод номера в букву | s[i] := Char(65); | | Ord | Перевод буквы в номер | s[i] := Char ( ord(s[i]) + 1 ) |