Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Pascal (Паскаль)

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 24, средняя оценка - 4.92
Бандит86
0 / 0 / 0
Регистрация: 17.04.2012
Сообщений: 8
#1

Нарисовать трапецию. Вокруг этой трапеции описать окружность - Pascal

17.04.2012, 18:23. Просмотров 3148. Ответов 10
Метки нет (Все метки)

Ребята помогите пожалуйста написать код программы в паскале...
нужно нарисовать трапецию, длины большего и меньшего основания а также угол при основании запросить у пользователя . Вокруг этой трапеции описать окружность..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.04.2012, 18:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нарисовать трапецию. Вокруг этой трапеции описать окружность (Pascal):

Нарисовать прямоугольный конус и равнобедренную трапецию - Pascal
Здравствуйте еще раз! Помогите пожалуйста еще с 2 задачами! Спасибо. 1. Написать программу, которая рисует прямоугольный конус,...

Вычислить длину стороны a и площадь S восьмиугольника, который или вписан в окружность с радиусом R, или описан вокруг нее - Pascal
Вычислить длину стороны a и площадь S восьмиугольника, который или вписан в окружность с радиусом R, или описан вокруг нее. ...

Нарисовать правильный шестиугольник и поворачивать его вокруг заданной точки - Pascal
Нарисовать правильный шестиугольник, если известна координата одной из его вершин. Шестиугольник поворачивается вокруг заданной точки на...

Графика: Нарисовать прямоугольник который крутится вокруг одной из своих вершин - Pascal
Нарисовать прямоугольник который крутится вокруг одной из своих вершин.

даны координаты точек в файле, вывести их на экран и описать вокруг них окружности.графическая интерпретация - Pascal
даны координаты точек в файле, вывести точки на экран и описать вокруг них окружности.графическая интерпретация. Добавлено через 3...

Какую блок схему нужно нарисовать к этой программе? - Pascal
//Ребус #include<conio.h> #include<iostream.h> void main() { int i,j,r; long int buk,slo,a; clrscr(); for(a=1;...

10
Puporev
Модератор
51981 / 39840 / 13233
Регистрация: 18.05.2008
Сообщений: 91,685
18.04.2012, 14:33 #2
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
uses crt,graph;
type point=record
           x,y:longint;
           end;
procedure Okr(a,b,c:Point;var o:Point;r:integer);
var ab,ac:Point;
    a1,b1,a2,b2,c1,c2:real;
begin
{середины сторон}
ab.x:=(a.x+b.x) div 2;
ab.y:=(a.y+b.y) div 2;
ac.x:=(a.x+c.x) div 2;
ac.y:=(a.y+c.y) div 2;
{координаты центра через уравнения прямых}
a1:=b.x-a.x;
b1:=b.y-a.y;
c1:=ab.x*(b.x-a.x)+ab.y*(b.y-a.y);
a2:=c.x-a.x;
b2:=c.y-a.y;
c2:=ac.x*(c.x-a.x)+ac.y*(c.y-a.y);
o.x:=round((c1*b2-c2*b1)/(a1*b2-a2*b1));
o.y:=round((a1*c2-a2*c1)/(a1*b2-a2*b1));
r:=round(sqrt(sqr(a.x-o.x)+sqr(a.y-o.y)));{радиус}
{рисуем окружность}
setcolor(12);
circle(o.x,o.y,r);
end;
var d,m,a,b,u:integer;{длины оснований и угол}
    t1,t2,t3,t4,o:point;
    xc,yc,r:integer;
begin
clrscr;
repeat
write('Bolshee osnovanie ot 100 do 200 a=');
readln(a);
until a in [100..200];
repeat
write('Menshee osnovanie ot 10 do ',a-20,' b=');
readln(b);
until b in [10..a-20];
repeat
write('Udol pri osnovanii ot 10 do 80 gradusov u=');
readln(u);
until u in [10..80];
initgraph(d,m,'');
xc:=getmaxX div 2;
yc:=getmaxY div 2;
{трапеция}
t1.x:=xc-a div 2;t1.y:=yc;
t4.x:=xc+a div 2;t4.y:=yc;
t2.x:=xc-b div 2;t2.y:=yc-round((a-b)*sin(u*pi/180)/(2*cos(u*pi/180)));
t3.x:=xc+b div 2;t3.y:=t2.y;
line(t1.x,t1.y,t2.x,t2.y);
line(t2.x,t2.y,t3.x,t3.y);
line(t3.x,t3.y,t4.x,t4.y);
line(t1.x,t1.y,t4.x,t4.y);
Okr(t1,t2,t3,o,r);{окружность}
readln
end.
1
Бандит86
0 / 0 / 0
Регистрация: 17.04.2012
Сообщений: 8
18.04.2012, 15:39  [ТС] #3
СПАСИБО ВАМ ОГРОМНОЕ)) а вы не можете еще расписать пошагово действия что зачем следует, объяснить?)
0
Puporev
Модератор
51981 / 39840 / 13233
Регистрация: 18.05.2008
Сообщений: 91,685
18.04.2012, 15:44 #4
Основное я написал, а описывать каждую строку, это увольте.

Добавлено через 43 секунды
Да и смысла нет, если Вы не знаете геометрию и почитать не хотите.
1
Бандит86
0 / 0 / 0
Регистрация: 17.04.2012
Сообщений: 8
18.04.2012, 16:45  [ТС] #5
Ну так то да)) ну все равно Спасибо Вам)
0
Бандит86
0 / 0 / 0
Регистрация: 17.04.2012
Сообщений: 8
24.04.2012, 15:51  [ТС] #6
а не могли бы вы пояснить что написано с 49 по 57 строку..а то все догнать не могу..и что значит запись например в 15 строке-одни символы черным а одни синим..
0
Puporev
Модератор
51981 / 39840 / 13233
Регистрация: 18.05.2008
Сообщений: 91,685
24.04.2012, 16:04 #7
Цитата Сообщение от Бандит86 Посмотреть сообщение
-одни символы черным а одни синим..
Это форматирование кода тегами PASCAL, это не я...

Добавлено через 10 минут
Цитата Сообщение от Бандит86 Посмотреть сообщение
что написано с 49 по 57 строку.
Так просто вычисляются координаты четырех вершин трапеции и соединяются линиями, пос этого рисуется окружность с вычисленным центром и радиусом, сплошная геометрия, а я не учитель этого предмета.
1
Бандит86
0 / 0 / 0
Регистрация: 17.04.2012
Сообщений: 8
24.04.2012, 16:05  [ТС] #8
а что значит вот это : a1:=b.x-a.x;...b точка x-это типо координата точки б по оси х?
0
Puporev
Модератор
51981 / 39840 / 13233
Регистрация: 18.05.2008
Сообщений: 91,685
24.04.2012, 16:08 #9
Pascal
1
2
3
a1:=b.x-a.x;
b1:=b.y-a.y;
c1:=ab.x*(b.x-a.x)+ab.y*(b.y-a.y);
Это такие формулы вычисления коэффициентов прямой вида ax+by+c=0 проведенной через 2 точки с координатами a.x,a,y,b.x,b.y
1
Бандит86
0 / 0 / 0
Регистрация: 17.04.2012
Сообщений: 8
24.04.2012, 16:34  [ТС] #10
а вот в 21 и 22 строке что там вычисляется?

Добавлено через 5 минут
а все понял)))
0
Бандит86
0 / 0 / 0
Регистрация: 17.04.2012
Сообщений: 8
02.05.2012, 15:19  [ТС] #11
а в виде блок схем не сможете помочь?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.05.2012, 15:19
Привет! Вот еще темы с ответами:

Даны основания равнобочной трапеции и величина угла при большем основании . Найти площадь трапеции - Pascal
Даны основания равнобочной трапеции и величина угла при большем основании . Найти площадь трапеции

С помощью рекурсивного определения описать функцию f и составить программу табулирования этой функции - Pascal
С помощью рекурсивного определения описать функцию f и составить программу табулирования этой функции в точках 0,1,...,n. f(0)=f(1)=1 ...

Нарисовать окружность, состоящую из секторов - PascalABC.NET
Здравтсвуйте. Задача такая: Нарисуйте окружность, состоящую из "n" закрашенных разными цветами секторов. Кто знает как примерно...

Нарисовать трапецию, которая будет двигаться от стенки до стенки, длины сторон трапеции задаются пользователем - Pascal ABC
Нарисовать трапецию, которая будет двигаться от стенки до стенки, длины сторон трапеции задаются пользователем.


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

Или воспользуйтесь поиском по форуму:
11
Yandex
Объявления
02.05.2012, 15:19
Ответ Создать тему
Опции темы

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