Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 07.04.2020
Сообщений: 2

Создание и использование объектов

07.04.2020, 19:36. Показов 455. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста

Задание: добавить класс-потомок прямоугольную трапецию с соответствующими методами.

А еще с какого угла нужно давать координаты точек?

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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
Type    FourAngle=class
Xl,yl,x2,y2,x3,y3,x4,y4,
A,B,C,D,D1,D2,
Alpha,Beta,Gamma,Delta,
P,S: real;
Procedure Init;
Procedure Storony;
Procedure Diagonali;
Procedure Angles;
Procedure Perimetr;
Procedure Ploshad;
Procedure PrintElements;
End;
 
Parall=class(FourAngle)
Procedure Storony;
Procedure Perimetr;
Procedure Ploshad;
End;
Romb=class(Parall)
Procedure Storony;
Procedure Perimetr;
End;
Kvadrat=class(Romb)
Procedure Angles;
Procedure Ploshad;
End;
 
Procedure FourAngle.Init;
Begin
Write('Введите координаты вершин заданного четырехугольника:');
ReadLn (xl, yl,x2, y2, x3, y3, x4, y4) ;
End;
Procedure FourAngle.Storony;
Begin
A:=Sqrt(Sqr(x2-xl)+Sqr(y2-yl));
B:=Sqrt(Sqr(x3-x2)+Sqr(y3-y2));
C:=Sqrt(Sqr(x4-x3)+Sqr(y4-y3));
D:=Sqrt(Sqr(x4-xl)+Sqr(y4-yl));
End;
Procedure FourAngle.Diagonali;
Begin
D1:=Sqrt(Sqr(xl-x3)+Sqr(yl-y3));
D2:=Sqrt(Sqr(x2-x4)+Sqr(y2-y4));
End;
Procedure FourAngle.Angles;
Function Ugol(Aa,Bb,Cc: real):real;
Var VspCos, VspSin: real; k:integer;
Begin
VspCos:=(Sqr(Aa)+Sqr(Bb)-Sqr(Cc))/(2*Aa*Bb);
VspSin:=Sqrt(1-Sqr(VspCos));
If Abs(VspCos)>1e-7
Then
Begin
 if VspCos<0 then k:=1 else k:=0;Ugol:=(ArcTan(VspSin/VspCos)
+Pi*k)/Pi*180 
end
Else Ugol:=90
End;
Begin Alpha:=Ugol(D,A,D2); Beta:=Ugol(A,B,D1);
Gamma:=Ugol(B,C,D2); Delta:=Ugol(C,D,D1);
End;
Procedure FourAngle.Perimetr;
Begin P:=A+B+C+D End;
Procedure FourAngle.Ploshad;
Var Per1, Per2: real;
Begin Per1:=(A+D+D2)/2; Per2:=(B+C+D1)/2;
S:=Sqrt(Per1*(Per1-A)*(Per1-D)*(Per1-D2)) +
Sqrt(Per2*(Per2-B)*(Per2-C)*(Per2-D1))
End;
Procedure FourAngle.PrintElements;
Begin
WriteLn(' Стороны: ',a:10:6,b:10:6,c:10:6, D:10:6,' Углы:', Alpha:10:4, Beta:10:4,Gamma:10:4, Delta:10:4,' Периметр:',P:10:6,' Площадь:',S:10:6,' Диагонали:',D1:10:6,D2:10:6)
End;
Procedure Parall.Storony;
Begin A:=Sqrt(Sqr(x2-xl)+Sqr(y2-yl));
B:=Sqrt(Sqr(x3-x2)+Sqr(y3-y2));
C:=A; D:=B
End;
Procedure Parall.Perimetr;
Begin P:=2*(A+B) End;
Procedure Parall.Ploshad;
Var Per: real;
Begin Per:=(A+D+D2)/2;
S:=2*Sqrt(Per*(Per-A)*(Per-D)*(Per-D2))
End;
Procedure Romb.Storony;
Begin
A:=Sqrt(Sqr(x2-xl)+Sqr(y2-yl) ) ;
B:=A; C:=A; D:=A
End;
Procedure Romb.Perimetr;
Begin P:=2*A End;
Procedure Kvadrat.Angles;
Begin Alpha:=90; Beta:=90; Gamma:=90;
Delta:=90;
End;
Procedure Kvadrat.Ploshad;
Begin S:=Sqr(A)
End;
{ Основная программа }
Var obj: Kvadrat;
     Begin
obj:= Kvadrat.Create;
obj.Init;
obj.Storony;
obj.Diagonali;
obj.Angles;
obj.Perimetr;
obj.Ploshad;
obj.PrintElements
End.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.04.2020, 19:36
Ответы с готовыми решениями:

Создание и использование массива объектов типа "Button"
Здравствуйте, я не могу понять,как создать и пользоваться массив объектов типа &quot;Button&quot;. Мне просто нужно присвоить им разные...

Использование динамических объектов с использованием других динамических объектов
Есть 2 массива, один создаёт Combobox, второй - Memo. Они создаются в количестве связаное с количеством записей в Базе Данных. Мне нужно...

Создание списка объектов класса с заранее неизвестным именем (именем самих объектов)
Уважаемые программисты, не получается решить такую задачу: требуется создать приложение (в консоли) &quot;клиенты банка&quot;. Есть два...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.04.2020, 19:36
Помогаю со студенческими работами здесь

Создание кода из строк или создание произвольного количества объектов
Привет сообществу. Возник такой вопрос: Мне в мидлете необходимо создать некоторое количество StringItem, заранее неизвестное, то бишь...

Создание и использование своих @NamedQueries. Использование EntityManager
Добрый день! Создавал классы сущностей и сессий через NetBeans генераторы кода. Использование стандартных...

Использование объектов
Решить задачу в консольном режиме Описать функцию в классе Name и создать объект, вызывающий данную функцию. Проверить...

Использование объектов
Решить задачу в консольном режиме: Описать функцию в классе Name и создать объект, вызывающий данную функцию. Проверить истинность...

использование объектов
решить в консольном режиме: Описать функцию в классе Name и создать объект, вызывающий данную функцию: Проверить истинность...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru