Podsumowanie — zaawansowane decyzje
Część sekcji Logika i sterowanie przepływem ścieżki C# w Coddy. Lekcja 12 z 66.
Wyzwanie
ŚredniUtwórz metodę o nazwie analyzeCandidateProfile, która:
- Przyjmuje cztery parametry:
age(int): Wiek kandydataexperienceYears(int): Lata doświadczeniaskillLevel(string): Jedna z wartości "Beginner", "Intermediate" lub "Expert"hasReferences(bool): Czy kandydat ma referencje
- Zwraca ciąg znaków z rekomendacją na podstawie następujących zasad:
- "Hire Immediately", jeśli:
- Kandydat ma od 25 do 40 lat ORAZ co najmniej 5 lat doświadczenia ORAZ poziom "Expert"
- LUB kandydat ma co najmniej 10 lat doświadczenia ORAZ ma referencje
- "Interview Further", jeśli:
- Kandydat ma co najmniej 22 lata ORAZ co najmniej 3 lata doświadczenia ORAZ poziom co najmniej "Intermediate"
- LUB kandydat ma co najmniej 18 lat ORAZ co najmniej 7 lat doświadczenia
- "Consider for Internship", jeśli:
- Kandydat ma co najmniej 18 lat ORAZ poziom "Beginner"
- LUB kandydat ma mniej niż 22 lata, ale ma referencje
- "Reject" we wszystkich pozostałych przypadkach
- "Hire Immediately", jeśli:
- Wykorzystaj zarówno złożoną logikę boolowską, jak i instrukcje if-else lub switch, zależnie od potrzeb.
Spróbuj swoich sił
public class AnalyzeCandidateProfile
{
public static string analyzeCandidateProfile(int age, int experienceYears, string skillLevel, bool hasReferences)
{
// Napisz tutaj swój kod
}
}Wszystkie lekcje w sekcji Logika i sterowanie przepływem
1Tablice wielowymiarowe
Podstawy tablic 2DDeklarowanie i inicjalizacja tablic 2DDostęp do elementów tablic 2DZagnieżdżone pętle z tablicami 2DTablice postrzępionePodstawowe operacje na macierzachPodsumowanie — tablice wielowymiarowe4Techniki sterowania przepływem
Wczesne zwrotyKlauzule ochronneInstrukcje skoku (goto)Break i continueSpłaszczanie zagnieżdżonych warunków7Zaawansowane operatory logiczne
Ewaluacja z krótkim spięciemWarunkowe operatory logicznePriorytet operatorówPowtórzenie — zaawansowane operatory2Zaawansowane podejmowanie decyzji
Wiele warunkówZłożona logika Boole’aPorównanie if i switchZagnieżdżone instrukcje switchPodsumowanie — zaawansowane decyzje5Obsługa wyjątków
Podstawy try-catchTypy wyjątkówWiele bloków catchPraca z plikamiBlok finallyusing a try-finallyWłasne wyjątkiPowtórzenie — obsługa błędów3Udoskonalenia pętli
Wydajność pętliIterowanie po złożonych strukturachKażdy typ pętliRefaktoryzacja pętliPodsumowanie — zoptymalizowane pętle6Obsługa wartości null
Podstawy referencji nullTypy wartości dopuszczające nullWzorce sprawdzania nullProgramowanie defensywnePodsumowanie — bezpieczeństwo nullPoćwicz samodzielnie: Kompilator C# online