// fixes times like more than 60 seconds
// int, int, int
public (int, int, int) Fix(int hours, int minutes, int seconds)
{
return realFix(hours, minutes, seconds);
}
// string
public string Fix(string timeString)
{
return ConvertVariablesToTimeString(realFix(ConvertTimeStringToVariables(timeString)));
}
// NOTE: maybe 1 convert method instead of 2?
// Converts Time String to variables to use
public (int, int, int) ConvertTimeStringToVariables(string timeString)
{
string[] times = timeString.Split(':');
int hours = int.Parse(times[0]);
int minutes = int.Parse(times[1]);
int seconds = int.Parse(times[2]);
return (hours, minutes, seconds);
}
// Converts Variables to Time String
public string ConvertVariablesToTimeString(int hours, int minutes, int seconds)
{
return $"{hours}:{minutes}:{seconds}";
}
public (int, int, int) realFix(int hours, int minutes, int seconds)
{
while (seconds >= 60)
{
seconds -= 60;
minutes++;
}
while (minutes >= 60)
{
minutes -= 60;
hours++;
}
return (hours, minutes, seconds);
}
// fixes times like more than 60 seconds
// int, int, int
public (int, int, int) Fix(int hours, int minutes, int seconds)
{
return realFix(hours, minutes, seconds);
}
// string
public string Fix(string timeString)
{
return ConvertVariablesToTimeString(realFix(ConvertTimeStringToVariables(timeString)));
}
// NOTE: maybe 1 convert method instead of 2?
// Converts Time String to variables to use
public (int, int, int) ConvertTimeStringToVariables(string timeString)
{
string[] times = timeString.Split(':');
int hours = int.Parse(times[0]);
int minutes = int.Parse(times[1]);
int seconds = int.Parse(times[2]);
return (hours, minutes, seconds);
}
// Converts Variables to Time String
public string ConvertVariablesToTimeString(int hours, int minutes, int seconds)
{
return $"{hours}:{minutes}:{seconds}";
}
public (int, int, int) realFix(int hours, int minutes, int seconds)
{
while (seconds >= 60)
{
seconds -= 60;
minutes++;
}
while (minutes >= 60)
{
minutes -= 60;
hours++;
}
return (hours, minutes, seconds);
}