diff --git "a/Retos/Reto #11 - URL PARAMS [F\303\241cil]/c#/JonAFernan.cs" "b/Retos/Reto #11 - URL PARAMS [F\303\241cil]/c#/JonAFernan.cs" new file mode 100644 index 0000000000..5861715d6e --- /dev/null +++ "b/Retos/Reto #11 - URL PARAMS [F\303\241cil]/c#/JonAFernan.cs" @@ -0,0 +1,59 @@ +namespace reto11; + +/* + * Dada una URL con parámetros, crea una función que obtenga sus valores. + * No se pueden usar operaciones del lenguaje que realicen esta tarea directamente. + * + * Ejemplo: En la url https://retosdeprogramacion.com?year=2023&challenge=0 + * los parámetros serían ["2023", "0"] + */ +class Program +{ + static void Main(string[] args) + { + UrlParam("https://retosdeprogramacion.com?year=2023&challenge=0"); + } + + static void UrlParam(string url) + { + string parameter =""; + List listParameter = new List(); + for (int i = 0; i < url.Length; i++) + { + if(url[i] == '=') + { + for (int j = i+1; j < url.Length; j++) + { + if(url[j] == '&') + { + i = j; + listParameter.Add(parameter); + parameter=""; + break; + } + parameter += url[j]; + + } + } + } + if(parameter != "")listParameter.Add(parameter); + + if(listParameter.Count == 0) + { + System.Console.WriteLine("No parameters in the URL"); + return; + } + + if (listParameter.Count == 1) System.Console.Write("The parametes is "); + else System.Console.Write("The parameters are "); + System.Console.Write("["); + + foreach (var item in listParameter) + { + if(item == listParameter[listParameter.Count-1]) System.Console.Write($"\"{item}\""); + else System.Console.Write($"\"{item}\", "); + } + + System.Console.WriteLine("]"); + } +}