Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
5 / 5 / 3
Регистрация: 16.04.2013
Сообщений: 16
1

Graph ABC: Нарисовать на экране разносторонний треугольник, вращающийся вокруг своего центра тяжести

23.05.2013, 11:19. Показов 2459. Ответов 1
Метки нет (Все метки)

в) Нарисовать на экране разносторонний треугольник, вращающийся вокруг своего центра тяжести.
0

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

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.05.2013, 11:19
Ответы с готовыми решениями:

Изобразите разносторонний треугольник, вращающийся в плоскости экрана вокруг своего центра тяжести
Изобразите разносторонний треугольник, вращающийся в плоскости экрана вокруг своего центра тяжести.

Изобразить на экране правильный треугольник, вращающийся в плоскости экрана вокруг своего центра
1. Изобразить на экране правильный треугольник, вращающийся в плоскости экрана вокруг своего...

Получить на экране разносторонний треугольник, вращающийся вокруг своего центра тяжести
Получить на экране разносторонний треугольник, вращающийся вокруг своего центра тяжести

Изобразите разносторонний треугольник, вращающийся вокруг своего центра тяжести
Изобразите разносторонний треугольник, вращающийся в плоскости экрана вокруг своего центра тяжести.

1
Модератор
63893 / 47370 / 32662
Регистрация: 18.05.2008
Сообщений: 114,900
23.05.2013, 11:49 2
Лучший ответ Сообщение было отмечено Pomoshnik как решение

Решение

в)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
uses graphABC,crt;
type tochka=record  {тип точка с полями}
            x,y:integer;{координаты}
            u,r:real;{угол луча и расстояние до центра вращения}
            end;
     mas=array[1..3] of tochka; {полигон из 3х-точек}
{угол между лучем и осью Х}
function Ugol(x0,y0,x,y:integer):real;
begin
if (x>x0)and(y<=y0) then Ugol:=arctan((y0-y)/(x-x0)){I четверть}
else if (x>x0)and(y>y0) then Ugol:=arctan((y0-y)/(x-x0))+2*pi{IV четверть}
else if x<x0 then  Ugol:=arctan((y0-y)/(x-x0))+pi{II-III четверти}
else if x=x0 then
 begin
  if y<y0 then  Ugol:=pi/2{вертикально вверх}
  else if y>y0 then Ugol:=3*pi/2{вертикально вниз}
 end;
end;
{расстояние до точки}
function Radius(x1,y1,x2,y2:integer):real;
begin
Radius:=sqrt(sqr(x1-x2)+sqr(y1-y2));
end;
{вращение точки вокруг центра}
procedure Vrach(x0,y0:integer;k:real;var a:mas);
var i:integer;
begin
for i:=1 to 3 do
 begin
  a[i].u:=a[i].u+k;
  a[i].x:=x0+round(a[i].r*cos(a[i].u));
  a[i].y:=y0-round(a[i].r*sin(a[i].u));
 end;
end;
{треугольник}
procedure Trg(a:mas;x1,y1:integer);
begin
setpencolor(clRed);
line(a[1].x,a[1].y,a[2].x,a[2].y);
line(a[2].x,a[2].y,a[3].x,a[3].y);
line(a[3].x,a[3].y,a[1].x,a[1].y);
setpencolor(clBlue);{точка вращения}
circle(x1,y1,3);
floodfill(x1,y1,clBlue);
end;
 
{программа}
var p:mas;
    xc,yc,x1,y1,i:integer;
    c:char;
begin
hidecursor;
xc:=windowwidth div 2;
yc:=windowheight div 2;
p[1].x:=xc-180;p[1].y:=yc+50;
p[2].x:=xc+120;p[2].y:=yc+80;
p[3].x:=xc+40;p[3].y:=yc-100;
x1:=round((p[1].x+p[2].x+p[3].x)/3);{координаты центра масс}
y1:=round((p[1].y+p[2].y+p[3].y)/3);
for i:=1 to 3 do{вычислим радиусы и углы}
 begin
  p[i].r:=Radius(x1,y1,p[i].x,p[i].y);
  p[i].u:=Ugol(x1,y1,p[i].x,p[i].y);
 end;
lockdrawing;
repeat
  clearwindow;
  textout(xc-60,10,'Выход любая клавиша');
  Vrach(x1,y1,0.1,p);
  Trg(p,x1,y1); {рисуем}
  delay(100);
  redraw;
until keypressed;
end.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.05.2013, 11:49

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

Изобразить разносторонний треугольник, вращающийся в плоскости апплета вокруг своего центра тяжести
вот условие: Изобразить разносторонний треугольник, вращающийся в плоскости апплета вокруг своего...

Графика в Турбо Паскаль. Разносторонний треугольник, вращающийся вокруг центра тяжести
Изобразить на экране разносторонний треугольник, вращающийся вокруг центра тяжести в плоскости...

Изобразить на экране правильный треугольник, вращающийся вокруг своего центра
Помогите написать программу Изобразить на экране правильный треугольник, вращающийся вокруг...

Изобразить на экране правильный треугольник, вращающийся в плоскости экрана вокруг своего центра
Изобразить на экране правильный треугольник, вращающийся в плоскости экрана вокруг своего центра....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.