Функции trunc, round в Pascal.

Для того чтобы в Паскаль можно было оперировать не только целыми числами, но и дробными существуют вещественные типы данных. Один из таких типов называется Real. В этом уроке мы рассмотрим 2 функции, которые производятся над дробными числами. Это ...

Тип данных String в Pascal.

Со строковыми переменными можно производить различные операции. Операция сцепления строк позволяет соеденить 2 строки между собой.

Функции Sqr, Abs, Sqrt, Sin, Cos, Arctan, Ln, Exp, Pi в Pascal.

Мы уже знаем, какие существуют функции для целых переменных. Это – нахождение модуля числа (Функция Abc), а также возведение числа в квадрат (Функция Sqr). В этом уроке мы рассмотрим функции, применяемые к дробным числам. Это функции Sqr - квадрат ...

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

Структурное программирование

Самое главное в программировании - это научиться писать четкие, логические и структурированные программы.

• Используйте осмысленные имена для переменных, процедур и функций.

• Используйте отступы ...

Индексы одномерного массива.

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

Функция 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
Спасибо. Это очень важная функция для моей идеи. Например мне нужно нарисовать фигуру по середине экрана, с неизвестным разрешением, и тут мне это очень пригодилось. Автору спасибо! Еще бы написали как пользоваться звуком ...
 
   ГлавнаяПаскальГрафика в ПаскальПроцедуры MoveTo и LineTo.