Защо Math.Sqrt смята различно с int или double?
Здравейте,
Вероятно въпросът ми е глупав за повечето от вас, но решавайки задачите към първата глава от книгата на Наков, установих че Math.Sqrt вади различен отговор, в зависимост от това дали го използвам с int или double. При int резултатът е цяло число (111), а при double е дробно (111,108055513541). Условието е да се напише конзолна програмка, която да изчислява и принтира квадратния корен на 12345. Ето и двете ми решения:
static void Main(string[] args)
{
int number = 12345;
int result = (int)Math.Sqrt(number);
Console.WriteLine("The square root of {0} is {1}", number, result);
}
static void Main(string[] args)
{
double square = Math.Sqrt(12345);
Console.WriteLine("The square root of 12345 is {0}", square);
}
Ясно, благодаря много за бързия отговор!