const int CONDITION_TO_SWAP = 2;
public static void Main()
Console.WriteLine(StringSwap("1f gsg", 3));
Console.WriteLine(StringSwap("1f gsg", 5));
Console.WriteLine(StringSwap("Anton Nazar", 5));
Console.WriteLine(StringSwap("54knknj52", 2));
Console.WriteLine(StringSwap("kc", 12));
Console.WriteLine(StringSwap("1223", 12));
Console.WriteLine(DigitsSwap(1223, 2));
Console.WriteLine(DigitsSwap(654213168, 1));
Console.WriteLine(DigitsSwap(165164, 2));
Console.WriteLine(DigitsSwap(1223, 14));
Console.WriteLine(DigitsSwap(100231556, 4));
Console.WriteLine(DigitsSwap(100, 2));
Console.WriteLine(StringSwap("100", 2));
static string StringSwap(string anyString, int numberOfSymbolsToSwap)
if (anyString.Length < CONDITION_TO_SWAP * numberOfSymbolsToSwap)
return "Your PARAMETER length is smaller than number of symbols to swap";
string endPart = anyString.Substring(0, numberOfSymbolsToSwap);
string middlePart = anyString.Substring(numberOfSymbolsToSwap, anyString.Length - 2 * numberOfSymbolsToSwap);
string startPart = anyString.Substring(anyString.Length - numberOfSymbolsToSwap, numberOfSymbolsToSwap);
return startPart + middlePart + endPart;
static int DigitsSwap(int anyDigits, int numberOfSymbolsToSwap)
string stringOfDigits = Convert.ToString(anyDigits);
if (stringOfDigits.Length < CONDITION_TO_SWAP * numberOfSymbolsToSwap)
Console.WriteLine("Your length is smaller than number of symbols to swap");
return Convert.ToInt32(StringSwap(stringOfDigits, numberOfSymbolsToSwap));