Zum Inhalt springen

tuxifan

Mitglieder
  • Gesamte Inhalte

    1
  • Benutzer seit

  • Letzter Besuch

Beiträge von tuxifan

  1. Hier ist meine Loesung:

     

    func auslastungAusrechnen(belegung: Array<Belegung>, startDatum: Date, endDatum: Date, station: Station) -> Int {
        // Rechne wie viel Auslastung 80% der Gesamtverfuegbarkeit entspricht
        let auslastung80Prozent = Int(station.anzahlBetten * 0.8)
    
        // Rechne Auslastung pro Tag
        var tage: [Date: Int] = [:] // Dictionary bzw. Map! Z.B. std::map<Date, int> in C++
    
        for datum in startDatum...endDatum {
            tage[datum] = 0
            for b in belegung {
                if b.stationId == station.stationId && b.datumVon <= datum && b.datumBis > datum {
                    tage[datum]! += 1
                }
            }
        }
    
        // Rechne Anzahl Tage an denen Auslastung mehr als 80% war
        var ergebnis = 0
    
        for (_, belegungen) in tage {
            if belegungen > auslastung80Prozent {
                ergebnis += 1
            }
        }
    
        return ergebnis
    }

     

    In dem Pseudocode den ich in der Prüfung geschrieben hab, hatte ich die map so deklariert:

    tage := new Map<Date, Int>

     

    Wichtig zu bedenken ist, dass Belegung::datumBis EXKLUSIV war: Belegungen sollten nicht für den Tag gezählt werden an dem sie enden. Das sehe ich bei @user2001 und bei @BeppeCSharpNauter falsch gelöst.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...