www.gcmsite.ru

Новости Программы PHP-скрипты Статьи Числа
Услуги Резюме Игры Автомобили Поиск

СИСТЕМНОЕ И ВЕБ-ПРОГРАММИРОВАНИЕ
компьютерная техника, игры

Нужна программа, скрипт или сайт? Анализ сайта или оптимизация? Копирайт или рерайт текстов? Заявка на выполнение работ.

Корректный вывод текста на экран в Borland Pascal 7.0
Разбиение текста на слова. Перенос слов

Статья показывает простой алгоритм вывода на экран монитора текста без обрезания слов при переносе на новую строку.

Алгоритм приспособлен для работы с текстовым режимом 80х25, но может быть изменен и для режима 40х25 и для графических режимов.

Часто, при выводе на экран, нам не хватает 80 символов. Строка, имеющая большую длину, переносится на новую строку и т.д. Т.к. для операторов вывода write и writeln безразлично, что выводить, они выводят в каждой строке не более 80 символов, ломая цепочки символов, являющихся для людей словами. Поэтому приходится использовать перенос слов.

Нижеприведенный алгоритм автоматически разбивает текст на слова и выводит их на строке до тех пор, пока они целиком умещаются на ней. Как только слово не может уместиться и должно быть частично перенесено на новую строку, алгоритм не станет выводить слово на текущей строке, а перенесет его на следующую.

procedure print(source: string);
var
  x, i: integer;
  s : string;
procedure output;
begin
  {Выводим слово и при необходимости переносим его на следующую строку}
  x := WhereX;
  if (80 - x) > (Length(s))
    then Write(s+' ')
    else
      begin
        WriteLn; Write(S+' ');
      end;
end;

begin
  s := '';
  i := 1;
  while i<= Length (Source) do
    begin
      if Source[i] <> ' '
        then s := s+ Source[i];
      if (source[i]=' ')
        then
          begin
            output;
            s := '';
          end;
      inc(i);
    end;
   output;
end;

А это - пример использования функции вывода текста:

Print('    Большое пространство комнаты занимают кучи бумаги, беспорядочно');
Print('разбросанной по всему полу.');
Print('Некоторые листы потеряли свою первоначальную белизну, превратившись');
Print('в размокшие салфетки алого цвета.');

При использовании алгоритма переноса слов нет необходимости рассчитывать, уместится ли текст на одной строке, не сломаются ли слова. Данный алгоритм нашел свое применение при выводе текста в текстовой приключенческой игре "Зомби 4 - Возвращение". Вышеприведенный пример c переносом слов взят из игры.




PHP — это язык программирования, основанный на использовании скриптов. Данный язык широко применяется для создания различных front-end и back-end веб-приложений. Поддерживается по-умолчанию большинством хостеров, являясь одним из лидеров среди языков программирования, предназначенных для создания динамических интерактивных сайтов.

Интересные материалы на сайте:

Рейтинг@Mail.ru     Автор, разработчик: Шаров Евгений   (gcmsite@yandex.ru)
(c) 2000-2017 GCM-Site - системное и веб-программирование
Цитирование материалов сайта возможно только при наличии гиперссылки