Можно ли и как копировать строки, чтобы не набирать по нескольку раз одно и то же?
Копирование строк осуществляется через буфер обмена, прямо как в Windows.
Для того, чтобы скопировать строку в буфер, необходимо сделать следующее:
1. Нажав и удерживая клавишу Shift, Вы передвигаете курсор клавишами-стрелками, вслед за ним текст выделяется белым цветом.
2. Выделенный фрагмент текста далее должен быть помешен в буфер: Для этого нажмите комбинацию Ctrl+Ins (Insert).
3. Теперь перемещайтесь в место, где хотите вставить текст и нажмите комбинацию Shft+Ins. (Вставка)
Таким образом можно копировать как одну строку, так и огромные блоки. Скажу сразу. что здесь нужны определенные навыки - но это приходит со временем (и быстрота работы и точность).
Как располагать вывод процедуры Write (см. выпуск 3) (например заголовок) по центру?
В принципе, не существует такой процедуры, которая ровняет выводымий текст по центру. Единственное, что я могу Вам пока предложить (самое оптимальное) - это дополнять начало строки пробелами. Вот пример:
Write( 'Заголовок');
Таким образом строка будет сдвигаться от начала экрана и выводиться к середине. Здесь можно посчитать, сколько пробелов сначала необходимо:
4. Ширина экрана (в символах) в DOS всегда 80 (а высота - 25 строк).
5. Берем длину строки (например, слово "Заголовок" - 9 символов).
6. Делим 80 (ширину экрана) на 2 - получаем 40.
7. Делим длину строки на 2 и отбрасываем остаток: 9/2 = 4.
8. Вычитаем из половины экрана (40 симовлов) половину длины строки: 40 - 4 = 36.
9. Это число и будет необходимым количеством пробелов.
Пока это единственный и самый разумный способ выравнивания строки посередине. Но есть и другой, который позволяет осуществлять это прямо в программе и с любой строкой, длина которой даже меняется все время. Но, к сожалению, он несколько сложен, используются процедуры подключаемых модулей и некоторые другие, с которыми я пока не знакомил Вас. Но после я к этому вернусь, а пока пользуйтесь приведенным примером