¿Qué crees que sucede cuando se ejecuta este código? ¿Qué corregirías?

Click aquí para desplegar la solución. 👈
✅ La respuesta correcta es la c: "Nombre del empleado: Juan, Salario: 0".

✏️ Explicación: El constructor de la clase Empleado hace incorrectamente la asignación de la propiedad Salario, debido a que se asigna esta propiedad (cuyo identificador comienza en mayúscula) al parámetro (en minúsculas), cuando debería ser a la inversa. Esto no impide la compilación, pero sí ocasiona que el valor del parámetro salario nunca se asigne a la propiedad Salario, por lo que ésta toma el 0 como valor por defecto para un dato de tipo int.


Solución al desafío



Desafío C# 👇
Desafío C# número 2

Click aquí para una versión accesible de la infografía (apta para lectores electrónicos)
 

Desafío C#

¿Cuál es la salida de este programa?

class Empleado {
   public string Nombre;
   public int Salario;
   public Empleado(string nombre, int salario) {
      Nombre = nombre;
      salario = Salario;
   }
}

class Programa {
    static void Main() {
    Empleado emp = new Empleado("Juan", 2500);
    Console.WriteLine("Nombre del empleado: " + emp.Nombre + ", Salario: " + emp.Salario);
    }
}

Opciones:

a.

b. Nombre del empleado: Juan, Salario: 2500

c. Nombre del empleado: Juan, Salario: 0