алг 
нач 
 
кон 
исп Простейший редактор 
цел L, C; L=200; C=100;  | максимальные размеры текста: 
|   не больше L строк по C символов 
цел Xmax, Ymax;          | размер экрана: 
Xmax:=80; Ymax:=24       |   Ymax строк по Xmax символов 
цел N                    | число строк в тексте 
сим таб Т[1:L,1:C]       | i-я строка хранится в Т[i,1:C] 
 
цел Yо,Xo |положение окна: 
| Yo - число строк текста, расположенных выше окна 
| Xo - число позиций (символов) текста левее окна 
 
цел Yk,Xk |координаты курсора в окне: 
| 1 <= Yk <= Ymax - номер строки (сверху вниз), 
| 1 <= Xk <= Xmax - номер позиции в строке 
 
 
алг вниз на строку                                       |(А138) 
надо | курсор смещен вниз на строку, если нужно, сдвинуто 
| и окно. Если курсор уже был за последней строкой 
| текста и сдвинуть его нельзя, то звонок 
нач 
выбор 
при Yo+Yk>N : звонок    |курсор ниже текста => звонок 
при Yk<Ymax : Yk:=Yk+1  |сдвиг курсора внутри окна 
иначе  Yo:=Yo+1      |курсор "уперся" => сдвиг окна 
все 
кон 
 
 
алг удалить символ                                    | (А139) 
надо | удален символ текста, на котором стоял курсор. 
| Символы правее курсора сдвинуты на одну позицию влево, 
| справа добавлен пробел 
нач цел y,i 
y:=Yo+Yk                   | номер строки в таблице Т 
нц для i от Xo+Xk до C-1  | сдвиг символов правее курсора 
Т[y,i]:=Т[y,i+1]         |  на одну позицию влево 
кц                         | 
T[y,C]:=' '                | справа добавляется один пробел 
кон 
 
 
алг переизобразить экран и курсор                    |(А140) 
нач цел m,i 
очистить экран 
m:=min(Ymax,N-Yo)    | число строк текста, попавших в окно 
нц для i от 1 до m 
поз(i,1); изобразить строку (Yo+i) 
кц 
поз(Yk,Xk)           | изображение курсора в нужной позиции 
кон 
 
 
алг изобразить строку (арг цел y)                     |(А141) 
дано | y - номер строки в таблице Т 
надо | на экране изображена попадающая в окно часть строки, 
| т.е. символы от Xо+1 до Xo+Xmax 
нач цел j 
нц для j от Xo+1 до Xo+Xmax 
вывсим( Т[y,j] )     | команда вывсим описана в п.26.7 
кц 
кон 
 
| . . . (алгоритмы других команд редактора) 
кон_исп 
 
 
