public static void Main()
Console.WriteLine(GetTransactionNumerFormatted(-30));
catch(InvalidOperationException ex){
Console.WriteLine(GetTransactionNumerFormatted(1));
Console.WriteLine(GetTransactionNumerFormatted(12));
Console.WriteLine(GetTransactionNumerFormatted(123));
Console.WriteLine(GetTransactionNumerFormatted(1234));
Console.WriteLine(GetTransactionNumerFormatted(12345));
private static string GetTransactionNumerFormatted(int transactionId){
throw new InvalidOperationException("Transaction ID should be possitive");
var transactionStr = transactionId.ToString();
if (transactionId < 10000){
return transactionStr.PadLeft(4, '0');
return transactionStr.Substring(transactionStr.Length -4);