Использование program, begin…end, write, readln, Uses Crt, Clrscr.

В этом уроке мы напишем самую простую программу, состоящую всего из пяти строк. Эта программа будет выводить сообщение на экран. Для написания программы нам необходимо знать как работают операторы Write, Readln, а также понять для чего нужны ...

Умножение, деление, сложение, вычитание вещественных чисел в Pascal.

С вещественными числами можно производить операции умножения, сложения, вычитания, а также операцию деления. Причем операция деления отличается от операции Div. Деление вещественных чисел - это обычное математическое деление, в результате которого ...

Логические операции с целыми числами.

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

Циклы и массивы

Рекурсивные вычислительные процессы.

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

Тип данных Boolean.

Тип BOOLEAN (булевский, логический). Логический тип в языке Паскаль задается как перечисляемый тип, содержащий всего два значения, которые имеют идентификаторы FALSE (ложь) и TRUE (истина).

Функция GetmaxX определяет максимальную координату по оси X для данного монитора. Функция GetmaxY определяет максимальную координату по оси Y для данного монитора.

 Рисование 2 линий, проходящих через середину экрана.




Program graphika3;
uses crt, graph;
Procedure Graphinterface;
Var gd, gm, error:Integer;
s:String;
Begin
gd:=detect;
s:=' ';
Initgraph(gd,gm,s);
error:=GraphResult;
if error<>GrOk then
begin
writeln(GraphErrorMsg(Error));
Halt(error)
end
end;
begin
Graphinterface;
line (0, getmaxy div 2, getmaxx, getmaxy div 2);
line (getmaxx div 2, 0, getmaxx div 2, getmaxy);
readln;
closegraph
end.



Строка №3 - №16. Записываем шаблонную процедуру для инициализации графического режима.

В строке №18 запускаем графический режим с помощью указания названия процедуры для запуска графического режима.

В строке №19 записываем процедуру Line, которая выводит на экран отрезок. Для этой процедуры указываем координаты. Функция getmaxx определяет максимальную координату X для данного монитора. Функция getmaxy определяет максимальную координату Y для данного монитора. Предположим, что ваш монитор имеет разрешение 1366?768 пикселей. В этом случае getmaxx будет равно 1366, а getmaxy будет равно 768.
Операция Div – это операция целочисленного деления. Поэтому getmaxy div 2 будет означать 768 div 2 = 384.
Таким образом, получается, что процедура Line в строке №19 имеет такие координаты. Line (0, 384, 1366, 384)(для экрана с разрешением 1366?768 пикселей).
Обратите внимание, что функции GetMaxX и GetMaxY имеют целочисленное значение типа Integer. Поэтому если Вы задаете координаты с помощью этих функций необходимо использовать операцию DIV (/ - нельзя использовать).

В строке №20 строим еще одну линию.

Линия в строке №19 будет горизонтальной, а линия в строке №20 – вертикальной.

getmaxx getmaxy

getmaxx getmaxy.


Предыдущая статья : Процедуры Setcolor, Line.

Оглавление : Уроки Паскаль. Графика.

Следующая статья : Процедуры MoveTo и LineTo.


Комментарии  

 
-1 # БиМ БАМ БуМ 25.12.2012 06:57
Точно подметили=))))
Ответить
 
 
0 # Вадим 03.02.2013 15:22
Спасибо. Это очень важная функция для моей идеи. Например мне нужно нарисовать фигуру по середине экрана, с неизвестным разрешением, и тут мне это очень пригодилось. Автору спасибо! Еще бы написали как пользоваться звуком ...
Ответить
 

Добавить комментарий

   ГлавнаяПаскальГрафика в ПаскальФункции GetmaxX и GetmaxY.