我正在尝试更新一个字符串参数并返回另一个具有更新版本号的字符串。
示例输入和输出:
nextVersion("1.2.3") === "1.2.4";
nextVersion("0.9.9") === "1.0.0.";
nextVersion("1") === "2";
nextVersion("1.2.3.4.5.6.7.8") === "1.2.3.4.5.6.7.9";
nextVersion("9.9") === "10.0";
除第一个数字外,所有数字不得大于 10:如果有,则必须将它们设置为 0 并按顺序递增下一个数字。
到目前为止,我可以: - 将字符串分开 - 增加一 - 放回原处
我需要帮助来确定版本号是否以 11.1 开头,因为当我增加它时,它变成 1.1.2 而不是 11.2
static void Main(string[] args)
{
string user_input;
Console.WriteLine("Hello");
Console.WriteLine("Please input the version number to increment: ");
user_input = Console.ReadLine();
string new_version_number = next_Version(user_input);
Console.WriteLine("Your number is : {0}", new_version_number);
Console.ReadKey();
}
public static string next_Version(string user_input)
{
//removing . for parsing
string string_no_dots = user_input.Replace(".", "");
//storing length to see if incrementing from version x99 to 100
int string_length = string_no_dots.Length;
//convert to int to increment version
int number_no_dots;
int.TryParse(string_no_dots,out number_no_dots);
//increment by 1
int new_version_number = number_no_dots+1;
//convert back to string
string new_version_string = Convert.ToString(new_version_number);
//add the periods
string string_with_dots = String.Join<char>(".", new_version_string);
return string_with_dots;
}
输入:1.2.3.4
输出:1.2.3.5 是正确的
但当
输入:11.2.3
输出:1.1.2.4 而实际输出应该是 11.2.4
感谢您的时间
繁星coding
Cats萌萌
一只名叫tom的猫
相关分类