Cześć!
Napisałem kawałek kodu, który konwertuje z formatu(double)h, na format (int)hh:(int)mm:(int)ss:
public static int[] ConvertTime(double t)
{
int h = (int)Math.Floor(t);
int m = (int)Math.Floor((t - (double)h) * 60f);
int s = (int)Math.Floor(((t - (double)h) * 60f - (double)m) * 60f);
return new int[] { h, m, s };
}
Problem stanowi niedokładność rozwiązania - myli się o jedną sekundę. Jak można to poprawić?