Данная статья является первой из цикла статей серии "Как это выглядит в КОНЦЕПТ".
Цикл статей посвящен сравнению исходных текстов программ на различных языках программирования с аналогичными
программами, написанными на КОНЦЕПТ.
Цель цикла статей - продемонстрировать наглядным образом преимущества и особенности русскоязычного языка программирования КОНЦЕПТ.
В данной статье приведены для сравнения листинги простой программы формирорвания рисунка корабля на Pascal и КОНЦЕПТ.
Обилие формул в примере обусловлено тем, что все координаты рисунка рассчитываются исходя из задаваемых значений для
ширины и высоты рисунка.
В данной статье используется пример из книги С.В.Глушков, А.Л.Клевцов. Delphi 2007. Самоучитель. Москва, Издательство АСТ, 2008. Стр. 385-387. Посмотреть обложку книги.
В книге приведены исходный текст (см. ниже в данной статье) и результат работы программы на Pascal для формирования простого рисунка корабля.
Листинг Pascal | Листинг КОНЦЕПТ |
---|---|
|
МАКС_ШИРИНА = 400 МАКС_ВЫСОТА = 300 Корабль функция Корабль память локальный ширина высота ширина = [МАКС_ШИРИНА] / 10 высота = [МАКС_ВЫСОТА] / 10 // Фон рисунка присвоить $ТипКисти 1 $ЦветКисти [$синий] рисовать очистить // Море присвоить $ТипКисти 1 $ЦветКисти [$голубой] присвоить $ТипЛинии 1 $ЦветЛинии [$ЦветКисти] $ТолщинаЛинии 1 рисовать прямоугольник 0 (= [МАКС_ВЫСОТА] - [высота] ) [МАКС_ШИРИНА] [МАКС_ВЫСОТА] // Корабль // Корпус корабля $ЦветКисти = [$белый] $ЦветЛинии = [$черный] рисовать многоугольник (= 2 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 3 * [высота] ) ) \ (= 8 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 3 * [высота] ) ) \ (= 7 * [ширина] ) (= [МАКС_ВЫСОТА] - [высота] ) \ (= 2 * [ширина] ) (= [МАКС_ВЫСОТА] - [высота] ) рисовать прямоугольник (= 3.5 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 5 * [высота] ) ) \ (= 6 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 3 * [высота] ) ) // Иллюминаторы $ЦветКисти = [$желтый] рисовать круг (= 3.9 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 4 * [высота] ) - (= 0.3 * [ширина] ) ) \ (= 4.5 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 4 * [высота] ) + (= 0.3 * [ширина] ) ) рисовать круг (= 5 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 4 * [высота] ) - (= 0.3 * [ширина] ) ) \ (= 5.6 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 4 * [высота] ) + (= 0.3 * [ширина] ) ) // Труба $ЦветКисти = [$черный] рисовать прямоугольник (= 4.5 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 8 * [высота] ) ) \ (= 5 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 5 * [высота] ) ) // Полоса на борту $ЦветЛинии = [$красный] рисовать линия (= 2 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 2 * [высота] ) ) \ (= 7.5 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 2 * [высота] ) ) // Полосы на трубе $ТолщинаЛинии = 2 рисовать линия (= 4.5 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 7.5 * [высота] ) ) \ (= 5 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 7.5 * [высота] ) ) рисовать линия (= 4.5 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 7 * [высота] ) ) \ (= 5 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 7 * [высота] ) ) // Надпись на борту $ТипТекста = 1 $ЦветТекста = [$черный] $ЦветКисти = [$белый] рисовать текстВпрямоугольнике (= 6 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 3 * [высота] ) ) \ (= 8 * [ширина] ) (= [МАКС_ВЫСОТА] - (= 2 * [высота] ) ) ВАРЯГ возврат |
Ниже приведен результат работы программы рисования корабля в системе КОНЦЕПТ.