Как исправить ошибку (обобщённые типы)? - C#

Узнай цену своей работы

Формулировка задачи:

Вот дано задание:

Задание 3

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

Вариант 6

Класс: прямоугольный треугольник. Поля: длины сторон. Методы: конструктор с параметрами, вычисление периметра и площади.
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace ConsoleApplication3_1
  7. {
  8. class Triangle<T>
  9. {
  10. T a;
  11. T b;
  12. T c;
  13. public Triangle() { }
  14. public Triangle(T a, T b, T c)
  15. {
  16. this.a = a;
  17. this.b = b;
  18. this.c = c;
  19. }
  20. public T P (T a, T b, T c)
  21. {
  22. return a as dynamic + b + c;
  23. }
  24. public T S (T a, T b, T c)
  25. {
  26. dynamic p = (a as dynamic + b + c) / 2;
  27. return Math.Sqrt(p * (p - a as dynamic) * (p - b) * (p - c)); // тут выдаёт ошибку
  28. }
  29. }
  30. class Program
  31. {
  32. static void Main(string[] args)
  33. {
  34. Triangle<int> Tr1 = new Triangle<int>();
  35. Console.WriteLine(Tr1.P(3, 4, 5));
  36. Console.WriteLine(Tr1.S(3, 4, 5));
  37. Console.ReadLine();
  38. }
  39. }

Решение задачи: «Как исправить ошибку (обобщённые типы)?»

textual
Листинг программы
  1. return (T) Math.Sqrt(p * (p - a as dynamic) * (p - b) * (p - c));

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.8 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы