Перевод числа из десятичной системы счисления в шестнадцатеричную.

Напишем программу, которая вводит с клавиатуры целое число в диапазоне от 0 до 15 и преобразует его к шестнадцатеричной системе счисления. Напомню, что в шестнадцатеричной системе счисления числа в диапазоне от 0 до 9 соответствуют таким же числам в ...

Тип данных Boolean. Значения True, False в Pascal.

Мы рассмотрели с Вами целый тип данных (integer), вещественный тип (real), символьный (char). В этом уроке мы рассмотрим тип данных, который имеет большое значение в программировании. Логический типBoolean. Одной из особенностей этого типа данных ...

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

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

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

Оператор варианта CASE.

Иногда его называют также оператором выбора. Это оператор CASE, который является обобщением оператора IF и позволяет сделать выбор из произвольного числа имеющихся вариантов.

Программирование циклов. Оператор безусловного перехода.

Цикл — это последовательность операторов, которая может выполняться более одного раза. В языке Паскаль разработано три механизма для конструирования циклов, использующих операторы FOR, WHILE, REPEAT.

...

Процедура Circle вычерчивает на экране окружность. В качестве параметров этой процедуры используются координаты центра окружности и длина радиуса. Процедура Arc вычерчивает на экране дугу, у которой указываются координаты центра, начальный угол, конечный угол и длину радиуса.

Рисование окружности и дуги с помощью процедур Circle и Arc.




Program Graphika13;
Uses crt, Graph;
var y:integer;
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;
setcolor(2);
Circle(300,200,100);
y:=0;
while y<=360 do
begin
arc( 600,200,0,y,100);
y:=y+10;
delay(1000);
end;
readln;
end.



Строка №3. Указываем переменную для хранения значения конечного угла при построении дуги.

В строке №20 записываем процедуру SetColor. Она применима к процедурам Circle и Arc и будет определять цвет окружности и дуги, которые мы зададим в строках №21 и №25.

Строка №21. Процедура Circle рисует окружность на экране. После записи процедуры в круглых скобках указываются параметры процедуры. Первые 2 параметра определяют координаты X и Y для центра окружности (в нашем примере координата X имеет значение 300 пикселей, а координата Y – 200 пикселей). Третий параметр процедуры Circle определяет радиус окружности (в нашем примере радиус имеет значение 100 пикселей). Таким образом, на экран выведется окружность зеленого цвета с центром в точке (300,200) и радиусом 100 пикселей.

Строка №22. Присваиваем переменной «y» начальное значение равное 0, т.е. конечный угол дуги равен 0.

Строка №23. Записываем цикл. Пока «y», т.е. конечный угол меньше либо равен 360 градусов, должно выполняться условие, которое следует за словом Do. За словом Do следуют 3 операции.

Строка №25. Первая операция – это процедура Arc, которая вычерчивает на экране дугу. Данная процедура имеет 5 параметров. Первые 2 параметра (в нашем примере 600,200) определяют координаты центра дуги. Третий параметр определяет начальный угол дуги в градусах (в нашем примере он равен 0). Четвертый параметр определяет конечный угол дуги в градусах (в нашем примере он равен переменной «y»). Пятый параметр определяет радиус дуги (в нашем примере 100 пикселей).

Строка №26. Увеличиваем переменную «y» на 10 градусов. Благодаря тому, что строка №25  и №26 находятся  в цикле, значение конечного угла будет увеличиваться от 0 до 360 с шагом в 10 градусов, причем это увеличение будут идти со скоростью 10 градусов в секунду благодаря процедуре Delay в строке №27.  Таким образом, на экран выведется дуга с центром в точке (600,200) и радиусом 100 пикселей. Начальный угол дуги будет равен 0 градусов. Конечный угол дуги также равен 0 градусов и растет на 10 градусов в секунду.Procedurih Circle i Arc.

Procedurih Circle i Arc..


Дополнение к материалу.

Для процедур Circle и Arc можно установить толщину линии с помощью процедуры SetLineStyle, причем тип линии может принимать значение только solidln (сплошной), т.е. процедура SetLineStyle может иметь параметры либо (0,0,1), либо (0,0,3).


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

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

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


Комментарии  

 
-1 # Вика 16.11.2014 13:32
:cry: У меня не получается нарисовать дугу... Как определить величину углов? :sigh:
Ответить
 
 
-2 # Настя 16.11.2014 13:42
Хм... Я тоже не понимаю... :sad:
Ответить
 
 
+2 # Альбина 04.06.2016 16:46
arc(x,y,радиус, начало градусов,конец градусов);
по новому =)
Ответить
 
 
-1 # EVG 07.10.2021 04:41
Дуга идет из угла StAngle к EndAngle, с радиусом Radius, используя точку с координатами (X, Y), как центр окружности.
Uses Graph;
Var Gd, Gm : Integer;
Radius : Integer;
Begin
Gd:=Detect;
InitGraph(Gd, Gm, 'C:\BP\BGI'); { Путь к BGI драйверам }
If GraphResult grOk Then Halt(1);
For Radius:=1 To 5 Do Arc(100, 100, 0, 90, Radius * 10);
ReadLn;
CloseGraph;
End.
Ответить
 

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

   ГлавнаяПаскальГрафика в ПаскальПроцедуры Circle и Arc.