![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Текстовые значения можно сравнить между собой с помощью операции сравнения: <, <=, =. Cравнение текстовых значений основано на использовании отношения символов, составляющих тексты.
Два текста равны, если они либо оба пусты, либо являются экземплярами одной и той же последовательности литер.
Текстовое значение t1 является меньше, чем текстовое значение t2, только в том случае, если они не равны и выполнено одно из условий:
- t1 пусто;
- вся последовательность символов из t1 совпадает с началом последовательности символов t2, то в t2 есть хотя бы еще один символ;
- ранги первых k символов t1 и t2 равны, а ранг (k+1) - го символа из t1 меньше, чем ранг (k+1) - го символа из t2.
Рассмотрим процедуру, которая выделяет в текстовой строке все слова и переворачивает их. Cлова друг от друга отделяются пробелами.
Begin
text a;
a:- text ('' кот сон '');
procedure rep(t);
text t;
Begin
text u; character c; integer k, k1, k2, k3, k4;
k3:= t. pos; u:- blanks (t. length);
t. setpos (1); u:= t;
while u. more do
Begin
c:= u. getchar;
if c ='' '' then t. putchar (c)
Else
Begin
k1:= u. pos;
while u. more do
Begin
c:= u. getchar;
if c = '' '' then
Begin
k2:= u. pos;
u. setpos (k2); k4:= k2 – 2;
while k4 >(k1 -2) do
Begin
u. setpos (k4);
k4:= k4 -1;
t. putchar (u. getchar);
end;
u. setpos (k2 -1); goto m1;
End
End
m1: end
End;
t. setpos (k3);
end rep;
outtext (a);
outimage;
rep(a);
outtext (a);
outimage;
end;
Если текстовое выражение имеет значение 'кот сон', то в результате выполнения процедуры получим 'ток нос'.
Организация ввода – вывода
Ввод-вывод в языке СИМУЛА основан на понятии файла. В настоящее время система СИМУЛА позволяет работать с файлами последовательной структуры. Каждый файл состоит из записей фиксированной длины.
В языке определены три класса объектов infile, outfile, printfile, которые определяют понятие файла (см. приложение). Далее рассмотрены только процедуры ввода с экрана и вывод на экран.
Дата публикования: 2015-01-23; Прочитано: 145 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!