Repaso: decisiones avanzadas
Parte de la sección Lógica y Flujo del Journey de C# de Coddy. Lección 12 de 66.
Desafío
IntermedioCrea un método llamado analyzeCandidateProfile que:
- Acepte cuatro parámetros:
age(int): Edad del candidatoexperienceYears(int): Años de experienciaskillLevel(string): "Beginner", "Intermediate" o "Expert"hasReferences(bool): Si el candidato tiene referencias
- Devuelva una recomendación en forma de cadena basándose en estas reglas:
- "Hire Immediately" si:
- El candidato tiene entre 25 y 40 años Y tiene 5 o más años de experiencia Y su nivel es "Expert"
- O el candidato tiene 10 o más años de experiencia Y tiene referencias
- "Interview Further" si:
- El candidato tiene 22 años o más Y tiene 3 o más años de experiencia Y su nivel es al menos "Intermediate"
- O el candidato tiene 18 años o más Y tiene 7 o más años de experiencia
- "Consider for Internship" si:
- El candidato tiene 18 años o más Y su nivel es "Beginner"
- O el candidato tiene menos de 22 años pero tiene referencias
- "Reject" en todos los demás casos
- "Hire Immediately" si:
- Usa tanto lógica booleana compleja como declaraciones if-else o switch, según corresponda.
Pruébalo tú mismo
public class AnalyzeCandidateProfile
{
public static string analyzeCandidateProfile(int age, int experienceYears, string skillLevel, bool hasReferences)
{
// Escribe tu código aquí
}
}Todas las lecciones de Lógica y Flujo
1Arrays multidimensionales
Conceptos básicos de arrays 2DDeclaración e inicialización de arrays 2DAcceso a elementos de arrays 2DBucles anidados con arrays 2DArrays irregularesOperaciones comunes con matricesRepaso: arrays multidimensionales4Técnicas de control de flujo
Retornos anticipadosCláusulas de guardaSentencias de salto (goto)Break y ContinueAplanar condicionales anidados7Operadores lógicos avanzados
Evaluación de cortocircuitoOperadores lógicos condicionalesPrecedencia de operadoresRepaso: operadores avanzados2Toma de decisiones avanzada
Múltiples condicionesLógica booleana complejaComparación entre If y SwitchSentencias Switch anidadasRepaso: decisiones avanzadas5Manejo de excepciones
Fundamentos de Try-CatchTipos de excepcionesMúltiples bloques CatchTrabajo con archivosBloque FinallyUso de Using frente a Try-FinallyExcepciones personalizadasRepaso: manejo de errores3Mejoras de bucles
Rendimiento de buclesIteración de estructuras complejasCada tipo de bucleRefactorización de buclesRepaso: bucles optimizados6Manejo de valores nulos
Conceptos básicos de referencias nulasTipos de valor anulablesPatrones de comprobación de valores nulosProgramación defensivaRepaso: seguridad frente a valores nulosPractica por tu cuenta: Compilador de C# online