Форум программистов, компьютерный форум, киберфорум
Другие языки программирования
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Сколько всего бывает языков программирования? https://www.cyberforum.ru/ other-lang/ thread2619072.html
Я так сижу и чет в голову ударило. А сколько всего языков?
Программирование [КуМир] Написать программу,которая пишет имя Миша 2 раза
Написать программу,которая пишет имя Миша 2 раза с использованием Цикла со счетчиком. Ничего сложного, просто особо не разбираюсь.
Программирование Определить язык
Здраствуйте. Занимаюсь ремонтом грузовиков. Блоки управления работают с помощю vdf file. Вопрос: на каком языке написан етот файл?
Программирование Язык ML Скачал язык отсюда http://smlnj.cs.uchicago.edu/ Скачал редактор jedit5.5.0 Установил. Как запустить Hello, world? https://www.cyberforum.ru/ other-lang/ thread2608062.html
Программирование Циклы с индексом и объектом в языке dart https://www.cyberforum.ru/ other-lang/ thread2607966.html
Привет всем. Начал изучать язык dart. Возник вопрос по циклам. Есть ли в dart циклы типа: for (index, object in list) {} В Python есть подобный цикл, но в dart я нашёл только без индекса: ...
Программирование Blockly
Кто то смог пройти 10 уровень лабиринта сразу без просмотра Youtube? Если да, то у Вас уже был опыт в программировании или нет? Там было предложение пропустить, чтобы вернуться позже. Если...
Squeak Программирование
Ищу диск, прилагавшейся к книге с уроками по этому языку https://ru.wikipedia.org/wiki/Squeak Лесневский А. С. Объектно-ориентированное программирование для начинающих. — М.: Бином.
Программирование DOT GraphViz День добрый, подскажите как выравнять графы, и вообще сделать более похожим :wall: digraph { rankdir=LR; label= " ", labelloc=top node 9, 14, 17, 23 node 3, 6, 8, 11, 13, 16, 2, 20, 22... https://www.cyberforum.ru/ other-lang/ thread2601328.html
Программирование [Graphviz / DOT] Пытаюсь настроить приближение графа при открытии файла html https://www.cyberforum.ru/ other-lang/ thread2600446.html
Я думаю, что-то нужно сделать с параметром fit 1.Пробовала zoom, но он убирает всю динамику графа и портит его качество. Мне правки нужно внести именно в html код (python кода у меня нет от...
Программирование Перевести программу из паскаля в кумир Program From2To10; var n2: Longint; n10, m, i: Integer; begin Write('n2 = '); ReadLn(n2); n10 := 0; m := 1; while n2 <> 0 do https://www.cyberforum.ru/ other-lang/ thread2598086.html
19 / 21 / 1
Регистрация: 09.04.2020
Сообщений: 125
23.04.2020, 21:24 0

Описать класс "Треугольник", который определяет эту геометрическую фигуру посредством задания длин трех его сторон

23.04.2020, 21:24. Просмотров 1365. Ответов 19
Метки (Все метки)

Ответ


Цитата Сообщение от helter Посмотреть сообщение
Наверно, человеку прискучил message passing
Скорее всего это тонкая ирония, ибо обмена сообщения в c++ нет, если речь не идет о потоках конечно. А вот message passing:
Lisp
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
#lang racket
 
 
(define triangle%
  (class object%
    ;; поля со значениями по умолчанию
    (init-field (a 1))
    (init-field (b 1))
    (init-field (c 1))
 
    (define/public (valid-triangle-sides?)
      (let ((a (get-field a this))
            (b (get-field b this))
            (c (get-field c this)))
        (and (< 0 a (+ b c))
             (< 0 b (+ a c))
             (< 0 c (+ a b)))))
 
    ;; печать длин сторон
    (define/public (display-sides)
      (printf
       "a: ~a, b: ~a, c: ~a~n"
       (get-field a this)
       (get-field b this)
       (get-field c this)))
 
    ;; изменить длину стороны
    (define/public (field-set name value)
      (when (with-handlers ((exn:fail? (lambda (exn) #f)))
              (dynamic-get-field name this))
        (let ((tmp (new triangle%
                        (a (get-field a this))
                        (b (get-field b this))
                        (c (get-field c this)))))
          (dynamic-set-field! name tmp value)
          (if (send tmp valid-triangle-sides?)
              (dynamic-set-field! name this value)
              (printf "Не существует треугольник со сторонами ~a, ~a, ~a~n"
                      (get-field a tmp)
                      (get-field b tmp)
                      (get-field c tmp))))))
 
    ;; площадь треугольника
    (define/public (area)
      (let* ((a (get-field a this))
             (b (get-field b this))
             (c (get-field c this))
             (p (/ (+ a b c) 2)))
        (expt (* p (- p a) (- p b) (- p c)) .5)))
    
    ;; инициализация
    (super-new)))
 
(define (main)
  (let ((foo (make-object triangle% 2 3 4))) ; создаем объект
    (printf "Печать сторон треугольника:~n")
    (send foo display-sides)
    (printf "Некорректное изменение стороны: ~n")
    (send foo field-set 'b 30)
    (printf "Печать сторон треугольника:~n")
    (send foo display-sides)
    (printf "Корректное изменение стороны: ~n")
    (send foo field-set 'a 5)
    (printf "Печать сторон треугольника:~n")
    (send foo display-sides)
    (printf "Площадь треугольника:~n")
    (send foo area)))
 
> (main)
 
;Печать сторон треугольника:
;a: 2, b: 3, c: 4
;Некорректное изменение стороны: 
;Не существует треугольник со сторонами 2, 30, 4
;Печать сторон треугольника:
;a: 2, b: 3, c: 4
;Корректное изменение стороны: 
;Печать сторон треугольника:
;a: 5, b: 3, c: 4
;Площадь треугольника:
;6.0


Вернуться к обсуждению:
Описать класс "Треугольник", который определяет эту геометрическую фигуру посредством задания длин трех его сторон
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.04.2020, 21:24

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Организовать класс треугольник, определенный по длинам трех сторон. Сделать ввод значений объектов
Здравствуйте. Лабораторную сдавал, практические сдал, но преподаватель дал задание, выполнение...

В программе определить массив записей Каждая запись определяет геометрическую фигуру: окружность
Лабораторная работа №7. Тема – работа с записями с вари-антами, графикой. В программе определить...

Описать класс треугольник через координаты трех точек
class Triangle { // поля double Ax; double Ay; double...

Описать класс "треугольник" с тремя полями — длинами сторон
Описать класс &quot;треугольник&quot; с тремя полями — длинами сторон. Добавить конструктор по умолчанию,...

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

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