Skip to content

🔧 Add Visual Studio solution file #105

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Sep 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
112 changes: 112 additions & 0 deletions 2024/02-funciones-y-alcance/solution.cs
Original file line number Diff line number Diff line change
@@ -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;
}
}
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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) <br /> [![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) <br /> [![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) <br /> [![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) <br /> [![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/01-operadores-y-estructuras-de-control/solution.ts) <br /> [![PHP](https://img.shields.io/badge/PHP-777BB4?style=flat&logo=php&logoColor=white)](./2024/01-operadores-y-estructuras-de-control/solution.php) <br /> [![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) <br /> [![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/02-funciones-y-alcance/solution.ts) <br /> [![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) <br /> [![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/02-funciones-y-alcance/solution.ts) <br /> [![PHP](https://img.shields.io/badge/PHP-777BB4?style=flat&logo=php&logoColor=white)](./2024/02-funciones-y-alcance/solution.php) <br /> [![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) <br /> [![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/03-estructuras-de-datos/solution.ts) <br /> [![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) <br /> [![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/04-cadenas-de-caracteres/solution.ts) <br /> [![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) <br /> [![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat&logo=typescript&logoColor=white)](./2024/05-valor-y-referencia/solution.ts) <br /> [![PHP](https://img.shields.io/badge/PHP-777BB4?style=flat&logo=php&logoColor=white)](./2024/05-valor-y-referencia/solution.php) |
Expand Down
1 change: 1 addition & 0 deletions weekly-challenges.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ private class Challenge(string name, Action execute)
private static readonly Dictionary<string, Challenge> 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<int, Dictionary<string, Challenge>> challengeActions = new() {
Expand Down
25 changes: 25 additions & 0 deletions weekly-challenges.sln
Original file line number Diff line number Diff line change
@@ -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
Loading