Methoden in einer Klasse bereitstellen

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Methoden in einer Klasse bereitstellen

    Hallo,

    für die Schule habe ich eine Datenstruktur für die folgende Aufgabe entwickelt:

    Erfassung der Blutdruckwerte eines Patienten
    Die Messung des systolischen arteriellen Blutdrucks spielt eine wichtige Rolle im
    medizinischen Alltag. Besonders in Krankenhäusern finden zur kontinuierlichen
    Überwachung der Patienten automatische Blutdruckmessungen statt.
    Die Messergebnisse können sich im ganzzahligen Wertebereich von 80 bis 200
    bewegen. Sie werden innerhalb dieser Aufgabenstellung nur für einen Patienten
    stündlich über drei Tage erfasst. Der behandelnde Arzt interessiert sich beispielhaft
    vor allem für das höchste und nied rigste Messergebnis innerhalb des
    Erfassungszeitraumes.

    Neben der Datenspeicherung der Messergebnisse in geeigneten Attributen soll die
    Klasse Methoden bereitstellen, die die oben angegebene Aufgabenstellung
    erfüllen.

    Nun habe ich zwar eine Datenstruktur, weiß aber nicht wie ich die Methoden dazu umsetzen soll.

    Hier ist die Klasse, die ich erstellt habe:

    VB.NET-Quellcode

    1. Public Class TMessergebnisse
    2. Structure BDMessung
    3. Dim MessungNr As Integer
    4. Dim Messbeginn As String
    5. Dim Messung() As Byte
    6. Dim Hoechmessung As Byte
    7. Dim Niedrigmessung As Byte
    8. End Structure
    9. Public Sub Hoch_Tief_Messung() 'Wie umsetzen?
    10. End Sub
    11. End Class



    Um die Messung einem Patienten zu zuordnen, kann die Messungs-Nummer verwendet werden.

    Messbeginn erfasst Datum und Uhrzeit der ersten Messung und erlaubt die genaue zeitliche Einordnung jeder Messung. Nun erfolgen stündlich insgesamt 72 Messungen, die in einem Array festgehalten werden.

    Eine Auswertung des höchsten und niedrigsten Ergebnisses erfolgt zum Schluss bzw. nach jeder Messung und wird in der Datenstruktur festgehalten.
    nimm statt Structure Class - Structures verhalten sich meist ungeeignet für die Datenhaltung.

    VB.NET-Quellcode

    1. Public Class TMessergebnisse
    2. Class BDMessung
    3. Dim MessungNr As Integer
    4. Dim Messbeginn As String
    5. Dim Messung() As Byte
    6. Dim Hoechmessung As Byte
    7. Dim Niedrigmessung As Byte
    8. End Class
    9. Public Sub Hoch_Tief_Messung() 'Wie umsetzen?
    10. End Sub
    11. End Class


    Du hast jetzt eine Klasse, und darin ist noch eine Klasse - ist auch nicht sinnvoll, also

    VB.NET-Quellcode

    1. Class BDMessung
    2. Dim MessungNr As Integer
    3. Dim Messbeginn As String
    4. Dim Messung() As Byte
    5. Dim Hoechmessung As Byte
    6. Dim Niedrigmessung As Byte
    7. End Class
    8. Public Class TMessergebnisse
    9. Public Sub Hoch_Tief_Messung() 'Wie umsetzen?
    10. End Sub
    11. End Class
    Tja, nun hat TMessergebnisse gar nichts mehr. Wie wäre es mit eine Liste von BDMessung-Objekten?

    VB.NET-Quellcode

    1. Public Class TMessergebnisse
    2. Public ReadOnly Messungen As New List(Of BDMessung)
    3. Public Sub Hoch_Tief_Messung() 'Wie umsetzen?
    4. End Sub
    5. End Class
    Da kann TMessergebnisse nun einzelne Messungen zufügen, und später auch mal die höchsten und niedrigsten Werte raussuchen oder was auch immer.
    Aber ich will nicht deine ganzen Hausaufgaben machen
    Willkommen im Forum. :thumbup:

    Nadia schrieb:

    folgende Aufgabe
    Wollen wir mal Nägel mit Köpfen machen.
    Zu einem beliebigen Zeitpunkt wird der Blutdruck gemessen. Dies sei ein einzelner Messpunkt, auch wenn die Blutdruckmessung ein paar Sekunden dauert.
    Also haben wir pro Messung (pro Messpunkt) 3 Werte:
    Zeitpunkt, oberer (systolischer) Wert, unterer (diastolischer) Wert. Diese 3 Werte sollten immer zusammen abgespeichert werden.
    Auch wenn der von Dir genannte Wertebereich es erlaubt, wollen wir bein Byte, sondern ein Integer dafür verwenden.
    Für den Zeitpunkt der Messung nehmen wir den .NET-Datentyp DateTime, der beinhaltet Datum und Uhrzeit und bietet eine große Funktionalität zur Verarbeitung.
    Die Auswertung machen wir in einer separaten Klasse, die ich Blutdruck nennen würde. Das Gerüst würde dann so aussehen:

    VB.NET-Quellcode

    1. Public Class Blutdruck
    2. ' die Blutdruck-Messwert-Struktur
    3. Public Structure BlutdruckWert
    4. Public Datum As DateTime
    5. Public systolisch As Integer
    6. Public diastolisch As Integer
    7. End Structure
    8. ' Liste aller Werte
    9. Public alleWerte As List(Of BlutdruckWert)
    10. ' Konstruktor
    11. Public Sub New()
    12. alleWerte = New List(Of BlutdruckWert)
    13. End Sub
    14. ' Hinzufügen eines Messwerts
    15. Public Sub Messung(sys As Integer, dia As Integer)
    16. Dim wert As BlutdruckWert
    17. wert.Datum = DateTime.Now
    18. wert.systolisch = sys
    19. wert.diastolisch = dia
    20. alleWerte.Add(wert)
    21. End Sub
    22. ' die Auswertung
    23. Public Sub Auswertung()
    24. ' was hier immer zu tun ist
    25. End Sub
    26. End Class
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!