Я изучаю C# и нашел эту проблему практики:Расчет площади треугольника с помощью методов в классе System.Math (C#)
Напишите программу, которая вычисляет площадь треугольника со следующими Дано: длины двух сторон и угол между ними (подсказка: боковая сторона)
Я знаю, как найти область треугольника в C#, если у меня есть основание и высота, и я знаю, что есть способ использовать метод .Cos в классе .Math, чтобы получить косинус, который мне нужен для моей проблемы. Тем не менее, моя программа, похоже, не нравится синтаксис, который я использую. Могу ли я получить какие-либо рекомендации о том, как реализовать методы в классе .Math, чтобы решить такую геометрическую проблему, которая принимает пользовательский ввод для стороны, угла и другой стороны?
Я знаю, что формула с^2 = а^2 + B^2 - 2ab * соз (у) // где у = степень угла
Вот что я до сих пор , который я думаю, будет получить через то, что я пытаюсь сделать:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace day_of_the_week
{
class Program
{
static void Main(string[] args)
{
double side1;
double side2;
double angle;
Console.WriteLine("Enter one side length.");
side1 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("Enter the other side's height.");
side2 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("Enter the value of the angle.");
angle = Convert.ToDouble(Console.ReadLine());
double thirdside = Program.thirdside(side1, side2);
Console.WriteLine(thirdside);
Console.ReadLine();
}
public static double thirdside(double side1, double side2, double angle)
{
return (side1*side1 + side2*side2 - 2*side1*side2.Cos(angle));
}
}
}
* «Моя программа, похоже, не похожа на синтаксис, который я использую» * не является достаточным описанием вашей проблемы. Пожалуйста, укажите ошибку, которую вы получите, и выделите строку, в которой происходит ошибка. Идеально потратьте время, чтобы удалить все строки, не связанные с ошибкой, и представить только пример минимального кода. Тем не менее, в вашем случае наиболее очевидная ошибка тривиальна. Вы пробовали посмотреть страницу руководства для Math.Cos (https://msdn.microsoft.com/en-us/library/system.math.cos%28v=vs.110%29.aspx)? Он содержит примеры и все такое. – HugoRune
Я голосую, чтобы закрыть этот вопрос как не относящийся к теме, потому что это в основном проблема математики (неправильная/неполная формула) в сочетании с недопустимым синтаксисом из-за опечаток. – poke
КПП. правильная формула для области будет '(side1 * side2 * Math.Sin (angle))/2.0'. – poke