From 2ab329546cd2404cb999728773c66e947345c187 Mon Sep 17 00:00:00 2001 From: Marco Cruz Date: Mon, 23 Sep 2024 22:40:40 -0600 Subject: [PATCH 1/3] =?UTF-8?q?=F0=9F=94=A7=20Add=20Visual=20Studio=20solu?= =?UTF-8?q?tion=20file?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- weekly-challenges.sln | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 weekly-challenges.sln diff --git a/weekly-challenges.sln b/weekly-challenges.sln new file mode 100644 index 0000000..d38f250 --- /dev/null +++ b/weekly-challenges.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.5.002.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "weekly-challenges", "weekly-challenges.csproj", "{9AC8FB7D-179A-4836-81E5-618E5173EB35}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {9AC8FB7D-179A-4836-81E5-618E5173EB35}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9AC8FB7D-179A-4836-81E5-618E5173EB35}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9AC8FB7D-179A-4836-81E5-618E5173EB35}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9AC8FB7D-179A-4836-81E5-618E5173EB35}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {AD2B30D3-5AA5-4748-A39E-CCFC40A3CD2C} + EndGlobalSection +EndGlobal From 2a706e0edfc2d9eb6062f64f848cfa7aa1770568 Mon Sep 17 00:00:00 2001 From: Marco Cruz Date: Mon, 23 Sep 2024 22:41:41 -0600 Subject: [PATCH 2/3] :sparkles: Add csharp solution challenge-02 --- 2024/02-funciones-y-alcance/solution.cs | 112 ++++++++++++++++++++++++ weekly-challenges.cs | 1 + 2 files changed, 113 insertions(+) create mode 100644 2024/02-funciones-y-alcance/solution.cs diff --git a/2024/02-funciones-y-alcance/solution.cs b/2024/02-funciones-y-alcance/solution.cs new file mode 100644 index 0000000..59bba01 --- /dev/null +++ b/2024/02-funciones-y-alcance/solution.cs @@ -0,0 +1,112 @@ +class FuncionesAlcance +{ + // Variable global + static int globalVariable = 10; + + public static void Execute() + { + // 1. Función sin parámetros ni retorno + PrintHello(); + + // 2. Función con un parámetro + PrintMessage("Hello, C#!"); + + // 3. Función con varios parámetros + AddNumbers(5, 10); + + // 4. Función con retorno + int result = MultiplyNumbers(3, 4); + Console.WriteLine($"Resultado de la multiplicación: {result}"); + + // 5. Funciones dentro de funciones (con función local) + OuterFunction(); + + // 6. Variables locales y globales + int localVariable = 5; + Console.WriteLine($"Variable local: {localVariable}"); + Console.WriteLine($"Variable global antes de modificar: {globalVariable}"); + ModifyGlobalVariable(); + Console.WriteLine($"Variable global después de modificar: {globalVariable}"); + + // 7. Función con dos cadenas de texto y retorno de un número (Dificultad Extra) + int count = PrintNumbersWithText("Fizz", "Buzz"); + Console.WriteLine($"El número de veces que se imprimió un número es: {count}"); + } + + // Función sin parámetros ni retorno + public static void PrintHello() + { + Console.WriteLine("Hello, World!"); + } + + // Función con un parámetro + public static void PrintMessage(string message) + { + Console.WriteLine(message); + } + + // Función con varios parámetros + public static void AddNumbers(int a, int b) + { + Console.WriteLine($"Suma: {a + b}"); + } + + // Función con retorno + public static int MultiplyNumbers(int a, int b) + { + return a * b; + } + + // Función externa con función interna (local) + public static void OuterFunction() + { + // Función local dentro de una función + static void InnerFunction() + { + Console.WriteLine("Soy una función interna."); + } + + Console.WriteLine("Soy la función externa."); + InnerFunction(); // Llamada a la función interna + } + + // Modificar la variable global + public static void ModifyGlobalVariable() + { + globalVariable += 10; + } + + // Función que recibe dos cadenas de texto y retorna un número (Dificultad Extra) + public static int PrintNumbersWithText(string text1, string text2) + { + int count = 0; + + for (int i = 1; i <= 100; i++) + { + if (i % 3 == 0 && i % 5 == 0) + { + // Si es múltiplo de 3 y 5, imprime ambas cadenas concatenadas + Console.WriteLine(text1 + text2); + } + else if (i % 3 == 0) + { + // Si es múltiplo de 3, imprime la primera cadena + Console.WriteLine(text1); + } + else if (i % 5 == 0) + { + // Si es múltiplo de 5, imprime la segunda cadena + Console.WriteLine(text2); + } + else + { + // Imprime el número y aumenta el contador + Console.WriteLine(i); + count++; + } + } + + // Retorna la cantidad de veces que se imprimió un número + return count; + } +} diff --git a/weekly-challenges.cs b/weekly-challenges.cs index 9d449fc..7ae5d11 100644 --- a/weekly-challenges.cs +++ b/weekly-challenges.cs @@ -11,6 +11,7 @@ private class Challenge(string name, Action execute) private static readonly Dictionary challenges2024 = new() { { "00", new Challenge("Sintaxis, variables, tipos de datos y ¡Hola, Mundo!", SintaxisVariables.Execute) }, { "01", new Challenge("Operadores y estructuras de control", OperadoresEstructurasControl.Execute) }, + { "02", new Challenge("Funciones y métodos", FuncionesAlcance.Execute) }, }; private static readonly Dictionary> challengeActions = new() { From 1ef84d119db333cc747b80dfdb64da11c8fca624 Mon Sep 17 00:00:00 2001 From: Marco Cruz Date: Mon, 23 Sep 2024 22:42:41 -0600 Subject: [PATCH 3/3] :memo: Update README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 286c16c..f6cb267 100644 --- a/README.md +++ b/README.md @@ -71,7 +71,7 @@ dotnet run 2024 00 | :-: | ------------------------------------------------------------------------------------------- | :--------: | --------------------------------------------------------------------------------------------------------------------- | | 00 | [Sintaxis, Variables, Tipos de datos y Hola Mundo](https://retosdeprogramacion.com/roadmap/)| 🟢 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/00-sintaxis-variables-tipos-de-datos-y-hola-mundo/index.js)
[![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/00-sintaxis-variables-tipos-de-datos-y-hola-mundo/solution.ts)
[![PHP](https://img.shields.io/badge/PHP-777BB4?style=flat&logo=php&logoColor=white)](./2024/00-sintaxis-variables-tipos-de-datos-y-hola-mundo/solution.php)
[![C#](https://img.shields.io/badge/C%23-239120?style=flat&logo=c-sharp&logoColor=white)](./2024/00-sintaxis-variables-tipos-de-datos-y-hola-mundo/solution.cs) | | 01 | [Operadores y Estructuras de Control](https://retosdeprogramacion.com/roadmap/) | 🟢 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/01-operadores-y-estructuras-de-control/index.js)
[![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/01-operadores-y-estructuras-de-control/solution.ts)
[![PHP](https://img.shields.io/badge/PHP-777BB4?style=flat&logo=php&logoColor=white)](./2024/01-operadores-y-estructuras-de-control/solution.php)
[![C#](https://img.shields.io/badge/C%23-239120?style=flat&logo=c-sharp&logoColor=white)](./2024/01-operadores-y-estructuras-de-control/solution.cs) | -| 02 | [Funciones y alcance](https://retosdeprogramacion.com/roadmap/) | 🟢 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/02-funciones-y-alcance/index.js)
[![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/02-funciones-y-alcance/solution.ts)
[![PHP](https://img.shields.io/badge/PHP-777BB4?style=flat&logo=php&logoColor=white)](./2024/02-funciones-y-alcance/solution.php) | +| 02 | [Funciones y alcance](https://retosdeprogramacion.com/roadmap/) | 🟢 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/02-funciones-y-alcance/index.js)
[![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/02-funciones-y-alcance/solution.ts)
[![PHP](https://img.shields.io/badge/PHP-777BB4?style=flat&logo=php&logoColor=white)](./2024/02-funciones-y-alcance/solution.php)
[![C#](https://img.shields.io/badge/C%23-239120?style=flat&logo=c-sharp&logoColor=white)](./2024/02-funciones-y-alcance/solution.cs) | | 03 | [Estructuras de Datos](https://retosdeprogramacion.com/roadmap/) | 🟡 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/03-estructuras-de-datos/index.js)
[![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/03-estructuras-de-datos/solution.ts)
[![PHP](https://img.shields.io/badge/PHP-777BB4?style=flat&logo=php&logoColor=white)](./2024/03-estructuras-de-datos/solution.php) | | 04 | [Cadena de Caracteres](https://retosdeprogramacion.com/roadmap/) | 🟡 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/04-cadenas-de-caracteres/index.js)
[![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/04-cadenas-de-caracteres/solution.ts)
[![PHP](https://img.shields.io/badge/PHP-777BB4?style=flat&logo=php&logoColor=white)](./2024/04-cadenas-de-caracteres/solution.php) | | 05 | [Valor y Referencia](https://retosdeprogramacion.com/roadmap/) | 🟢 | [![JavaScript](https://img.shields.io/badge/-JavaScript-F7DF1E?style=flat&logo=javascript&logoColor=black)](./2024/05-valor-y-referencia/index.js)
[![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/05-valor-y-referencia/solution.ts)
[![PHP](https://img.shields.io/badge/PHP-777BB4?style=flat&logo=php&logoColor=white)](./2024/05-valor-y-referencia/solution.php) |