170 похожих чатов

Package main import "math" type Coordinate struct { x int

y int
}

type Triangle struct {
a Coordinate
b Coordinate
c Coordinate
}

type Triangles []Triangle

func (t Triangle) perimeter() int {
AB := math.Sqrt(math.Pow(float64(t.b.x)-float64(t.a.x), 2) + math.Pow(float64(t.b.y)-float64(t.a.y), 2))
BC := math.Sqrt(math.Pow(float64(t.c.x)-float64(t.b.x), 2) + math.Pow(float64(t.c.y)-float64(t.b.y), 2))
CA := math.Sqrt(math.Pow(float64(t.c.x)-float64(t.a.x), 2) + math.Pow(float64(t.c.y)-float64(t.a.y), 2))
return int(AB + BC + CA)
}

func main() {

}

Здравствуйте. Есть структура треугольник, она задаётся тремя координатами. Есть для этой структуры метод, который находит периметр.

Можно ли как-то сделать поле p в структуре треугольник, которому автоматически значение периметра присвоется после объявления треугольника?

Ну то есть

type Triangle struct {
a Coordinate
b Coordinate
c Coordinate
p int
}

tr := Triangle{Coordinate{1, 1}, Coordinate{2, 2}, Coordinate{3, 3}}
print(tr.p) // тут уже посчитан периметр

1 ответов

12 просмотров

Для таких целей можно использовать конструктор

Похожие вопросы

Обсуждают сегодня

вот такое это из хаскеловской или никсовой ситуации ? пока мне сложно отличить, может кто понимает last 10 log lines: > Running phase: updateAutotoolsGnuConfig...
Fedor
18
Снова я с выводом номера вхождения подстроки в строку. Исправил код, номер элемента, с которого начинается подстрока в строке, выводит, но неправильно. Подскажите, пожалуйста,...
Ыиу
2
а вот так если по инструкции выше Y % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total ...
Fedor
7
Вопрос, не ставиться haskus-utils-variant (>=3.3 && <3.4) - говорит битый пакет под никсом, есть у кого мысли как чинить ?
Fedor
16
@dt0W3s1yQE75Mew ну чё как чувствуешь себя здесь бот? запомни тупое ты чучело - в ассемблере нету тянок
.
18
Доброго времени! Есть ли в Lazarus заклинания повышающие точность double? function Distance( constref pt0,pt1:TDVec2 ):double; var cp,st:TDVec2; sin_sr1,sin_sr2, ...
Александр Смоляков
3
ого, прикольно, а что пишешь?
CodWiz | Серёжа by CodWiz
32
а почему бы не поведать миру эти дополнения, сделав их по сути стандартными для ide ?
Mixail Frolov
26
А что за прикол,типа тут я никого не найду получается?
🥀
17
Добрый день, пытаюсь в sentry подключить к кластерам кафки и кликхауса, мне необходимо передать им "bootstrap.servers": "servers:9092" но я не понимаю как передать туда server...
Михаил
7
Карта сайта