Feedback

Sternzeichen bestimmen

Sprache: C#

Mit dieser Methode kann das Sternzeichen bestimmt werden.
/// <summary>
/// Gets the star sign.
/// </summary>
/// <param name="candidate">The candidate</param>
/// <returns></returns>
string GetStarSign(DateTime candidate)
{
    switch (Convert.ToInt32(candidate.Month))
    {
        case 1:
            if (candidate.Day >= 20 && candidate.Day <= 31)
                return "Widder";
            else
                return "Steinbock";

        case 2:
            if (candidate.Day >= 1 && candidate.Day <= 19)
                return "Fische";
            else
                return "Wassermann";
        case 3:
            if (candidate.Day >= 1 && candidate.Day <= 20)
                return "Fische";
            else
                return "Widder";
        case 4:
            if (candidate.Day >= 1 && candidate.Day <= 19)
                return "Widder";
            else
                return "Stier";
        case 5:
            if (candidate.Day >= 1 && candidate.Day <= 20)
                return "Stier";
            else
                return "Zwillinge";
        case 6:
            if (candidate.Day >= 1 && candidate.Day <= 20)
                return "Zwillinge";
            else
                return "Krebs";
        case 7:
            if (candidate.Day >= 1 && candidate.Day <= 22)
                return "Krebs";
            else
                return "Löwe";
        case 8:
            if (candidate.Day >= 1 && candidate.Day <= 22)
                return "Löwe";
            else
                return "Jungfrau";
        case 9:
            if (candidate.Day >= 1 && candidate.Day <= 22)
                return "Jungfrau";
            else
                return "Waage";
        case 10:
            if (candidate.Day >= 1 && candidate.Day <= 22)
                return "Waage";
            else
                return "Skorpion";
        case 11:
            if (candidate.Day >= 1 && candidate.Day <= 21)
                return "Skorpion";
            else
                return "Schütze";
        case 12:
            if (candidate.Day >= 1 && candidate.Day <= 21)
                return "Schütze";
            else
                return "Steinbock";
    }
    return string.Empty;
}
/// <summary>
/// Gets the star sign.
/// </summary>
/// <param name="candidate">The candidate</param>
/// <returns></returns>
string GetStarSign(DateTime candidate)
{
    switch (Convert.ToInt32(candidate.Month))
    {
        case 1:
            if (candidate.Day >= 20 && candidate.Day <= 31)
                return "Widder";
            else
                return "Steinbock";

        case 2:
            if (candidate.Day >= 1 && candidate.Day <= 19)
                return "Fische";
            else
                return "Wassermann";
        case 3:
            if (candidate.Day >= 1 && candidate.Day <= 20)
                return "Fische";
            else
                return "Widder";
        case 4:
            if (candidate.Day >= 1 && candidate.Day <= 19)
                return "Widder";
            else
                return "Stier";
        case 5:
            if (candidate.Day >= 1 && candidate.Day <= 20)
                return "Stier";
            else
                return "Zwillinge";
        case 6:
            if (candidate.Day >= 1 && candidate.Day <= 20)
                return "Zwillinge";
            else
                return "Krebs";
        case 7:
            if (candidate.Day >= 1 && candidate.Day <= 22)
                return "Krebs";
            else
                return "Löwe";
        case 8:
            if (candidate.Day >= 1 && candidate.Day <= 22)
                return "Löwe";
            else
                return "Jungfrau";
        case 9:
            if (candidate.Day >= 1 && candidate.Day <= 22)
                return "Jungfrau";
            else
                return "Waage";
        case 10:
            if (candidate.Day >= 1 && candidate.Day <= 22)
                return "Waage";
            else
                return "Skorpion";
        case 11:
            if (candidate.Day >= 1 && candidate.Day <= 21)
                return "Skorpion";
            else
                return "Schütze";
        case 12:
            if (candidate.Day >= 1 && candidate.Day <= 21)
                return "Schütze";
            else
                return "Steinbock";
    }
    return string.Empty;
}

3 Kommentare

  1. Ist zwar ein nettes Skript aber völlig mit den falschen Daten gefüttert…Richtig wäre[code]‘ Wassermann (21. Januar bis 19. Februar)
    ‚ Fische (20. Februar bis 20. März)
    ‚ Widder (21. März bis 20. April)
    ‚ Stier (21. April bis 21. Mai)
    ‚ Zwillinge (22. Mai bis 21. Juni)
    ‚ Krebs (22. Juni bis 23. Juli)
    ‚ Löwe (24. Juli bis 23. August)
    ‚ Jungfrau (24. August bis 23. September)
    ‚ Waage (24. September bis 23. Oktober)
    ‚ Skorpion (24. Oktober bis 22. November)
    ‚ Schütze (23. November bis 21. Dezember)
    ‚ Steinbock (22. Dezember bis 20. Januar) [/code]

  2. Abgesehen von den falschen Daten…
    Nur ein Beispiel, das sich durch den ganzen Code zieht:
    [code]candidate.Day >= 1 && candidate.Day <= 19[/code] Der erste Teil dieser Bedingung ist überflüssig, da kein Monat weniger als 1 Tag hat...

  3. Also umständlicher geht’s kaum… Besser man berechnet anfangs einen Hashwert ohne Jahr und fragt dann die Zeiträume ab. Achtung: Beim Steinbock den Jahreswechsel durch logsiches OR beachten…

    [code] public static string Sternzeichen(DateTime pGeburtsdatum)
    {
    int md = pGeburtsdatum.Month * 100 + pGeburtsdatum.Day;
    if (md >= 0121 && md <= 0219) return "Wassermann"; if (md >= 0220 && md <= 0320) return "Fische"; if (md >= 0321 && md <= 0420) return "Widder"; if (md >= 0421 && md <= 0520) return "Stier"; if (md >= 0521 && md <= 0621) return "Zwillinge"; if (md >= 0622 && md <= 0722) return "Krebs"; if (md >= 0723 && md <= 0823) return "Löwe"; if (md >= 0824 && md <= 0923) return "Jungfrau"; if (md >= 0924 && md <= 1023) return "Waage"; if (md >= 1024 && md <= 1122) return "Skorpion"; if (md >= 1123 && md <= 1222) return "Schütze"; if (md >= 1223 || md <= 0120) return "Steinbock"; } [/code]