public static Program instance;
public string OrdenaArray(params string[] args)
var resultado = string.Empty;
string aux = string.Empty;
for(int i = 0; i < args.Length ; i++){
for( int j = 0; j < args.Length -1; j++){
if(Convert.ToInt32(args[j]) > Convert.ToInt32(args[j+1])){
args[j+1] = Convert.ToInt32(args[j]).ToString();
args[j] = Convert.ToInt32(aux).ToString();
foreach(string item in args)
resultado = resultado.Remove(resultado.Length - 1, 1);
public string BuscaItensFaltantesNaSequencia(params string[] args)
var resultado = string.Empty;
string[] tempArray = args[0].Split(",");
for(int i=0; i < tempArray.Length -1; i++){
int aux = Convert.ToInt32(tempArray[i]) + 1;
if(aux != Convert.ToInt32(tempArray[i+1]))
resultado = resultado.Remove(resultado.Length - 1, 1);
public static void Main()
instance = instance ?? new Program();
var ordenado = instance.OrdenaArray("6", "3", "5", "4", "01", "7", "9");
var itensFaltantes = instance.BuscaItensFaltantesNaSequencia(ordenado);
var resultadoOrdenadoEsperado = "1,3,4,5,6,7,9";
var resultadoItensFaltantesEsperado = "2,8";
Console.WriteLine(ordenado == resultadoOrdenadoEsperado ? $"CORRETO {ordenado} == {resultadoOrdenadoEsperado}": $"INCORRETO {ordenado} != {resultadoOrdenadoEsperado}");
Console.WriteLine(itensFaltantes == resultadoItensFaltantesEsperado ? $"CORRETO {itensFaltantes} == {resultadoItensFaltantesEsperado}": $"INCORRETO {itensFaltantes} != {resultadoItensFaltantesEsperado}");