Menu
Coddy logo textTech

Zusammenfassung – Studentennote

Teil des Abschnitts Object Oriented Programming der Lua-Journey von Coddy — Lektion 18 von 70.

challenge icon

Aufgabe

Einfach

Lassen Sie uns eine vollständige Student-Klasse erstellen, die alles vereint, was Sie in diesem Kapitel gelernt haben – Instanzvariablen, Getter, Setter und berechnete Eigenschaften, die alle zusammenarbeiten!

Sie werden Ihren Code auf zwei Dateien aufteilen:

  • Student.lua: Definieren Sie Ihre Student-Klasse mit dem Standard-Prototyp-Muster. Jeder Student sollte einen name und eine grade speichern. Ihre Klasse benötigt:
    • Einen :new(name, grade) Konstruktor
    • Einen :getName() Getter, der den Namen des Studenten zurückgibt
    • Einen :getGrade() Getter, der die aktuelle Note zurückgibt
    • Einen :setGrade(newGrade) Setter, der die Note aktualisiert
    • Eine :hasPassed(threshold) Methode, die true zurückgibt, wenn die Note des Studenten größer oder gleich dem Schwellenwert ist, andernfalls false
  • main.lua: Binden Sie Ihr Student-Modul ein und demonstrieren Sie die gesamte Funktionalität, indem Sie einen Studenten erstellen, seinen Status überprüfen, seine Note aktualisieren und die Änderungen verifizieren.

Sie erhalten vier Eingaben:

  1. Name des Studenten
  2. Anfangsnote
  3. Zu prüfender Bestehensschwellenwert
  4. Neu zu setzende Note

Erstellen Sie in Ihrer Hauptdatei einen Studenten mit dem angegebenen Namen und der Anfangsnote und geben Sie dann Folgendes in separaten Zeilen aus:

  1. Den Namen des Studenten
  2. Die Anfangsnote des Studenten
  3. Ob der Student mit dem gegebenen Schwellenwert bestanden hat (geben Sie true oder false aus)
  4. Die Note des Studenten nach der Aktualisierung mit der neuen Note
  5. Ob der Student nach der Notenaktualisierung mit demselben Schwellenwert bestanden hat

Wenn die Eingaben beispielsweise Emma, 55, 60 und 75 sind, sollte die Ausgabe wie folgt aussehen:

Emma
55
false
75
true

Emma hatte ursprünglich eine Note von 55, was den Bestehensschwellenwert von 60 nicht erfüllte. Nach der Aktualisierung ihrer Note auf 75 hat sie nun bestanden!

Probier es selbst

-- Erfordert das Student-Modul
local Student = require('Student')

-- Eingaben lesen
local name = io.read()
local initialGrade = tonumber(io.read())
local threshold = tonumber(io.read())
local newGrade = tonumber(io.read())

-- TODO: Erstelle einen Studenten mit dem angegebenen Namen und der Anfangsnote

-- TODO: Gib den Namen des Studenten mit dem Getter aus

-- TODO: Gib die Anfangsnote des Studenten mit dem Getter aus

-- TODO: Überprüfe und gib aus, ob der Student mit dem angegebenen Schwellenwert bestanden hat

-- TODO: Aktualisiere die Note des Studenten mit dem Setter

-- TODO: Gib die neue Note des Studenten aus

-- TODO: Überprüfe und gib aus, ob der Student nach der Notenaktualisierung bestanden hat

Alle Lektionen in Object Oriented Programming