using System;
class 雷榜才圆曲线要素计算
{
static void Main()
{
double R = 15;
int A_degrees = 15, A_minutes = 36;
double A_seconds = 56;
if (A_seconds >= 60 || A_minutes >= 60)
{
Console.WriteLine("角度错误");
return;
}
double B = A_degrees + A_minutes / 60.0 + A_seconds / 3600.0;
if (B > 360)
{
Console.WriteLine("角度错误");
return;
}
if (R > 10000)
{
Console.WriteLine("距离错误");
return;
}
double C = B * Math.PI / 180.0;
double T = R * Math.Tan(C / 2);
double E = R * (1 / Math.Cos(C / 2) - 1);
double L = R * C;
double q = 2 * T - L;
Console.WriteLine($"给定半径 R = {R:F4} 米");
Console.WriteLine($"给定角度 A = {A_degrees}°{A_minutes}'{A_seconds}\"");
Console.WriteLine($"切线长度 T = {T:F4} 米");
Console.WriteLine($"外矢距 E = {E:F4} 米");
Console.WriteLine($"曲线长 L = {L:F4} 米");
Console.WriteLine($"切曲线差 q = {q:F4} 米");
}
}