Menu
Coddy logo textTech

Özet - Öğrenci Notu

Coddy'nin Lua Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası. Ders 18 / 70.

challenge icon

Görev

Kolay

Bu bölümde öğrendiğin her şeyi bir araya getiren eksiksiz bir Student sınıfı oluşturalım: örnek değişkenler, getter'lar, setter'lar ve hesaplanan özellikler hep birlikte çalışacak!

Kodunu iki dosyada düzenleyeceksin:

  • Student.lua: Standart prototype pattern'i kullanarak Student sınıfını tanımla. Her öğrenci bir name ve bir grade saklamalıdır. Sınıfının şunlara ihtiyacı var:
    • Bir :new(name, grade) constructor'ı
    • Student öğrencisinin adını döndüren bir :getName() getter'ı
    • Mevcut notu döndüren bir :getGrade() getter'ı
    • Notu güncelleyen bir :setGrade(newGrade) setter'ı
    • Student öğrencisinin notu threshold değerinden büyük veya eşitse true, aksi takdirde false döndüren bir :hasPassed(threshold) method'u
  • main.lua: Student module'ünü Require et ve bir öğrenci oluşturarak, durumunu kontrol ederek, notunu güncelleyerek ve değişiklikleri doğrulayarak tüm işlevleri göster.

Dört input alacaksın:

  1. Student öğrencisinin adı
  2. Başlangıç notu
  3. Kontrol edilecek geçme threshold değeri
  4. Ayarlanacak yeni not

main dosyanda, verilen ad ve başlangıç notuyla bir öğrenci oluştur; ardından aşağıdakileri ayrı satırlarda Print et:

  1. Student öğrencisinin adı
  2. Student öğrencisinin başlangıç notu
  3. Student öğrencisinin verilen threshold değeriyle passed olup olmadığı (true veya false Print et)
  4. Yeni notla update ettikten sonra Student öğrencisinin notu
  5. Not update edildikten sonra aynı threshold değeriyle Student öğrencisinin passed olup olmadığı

Örneğin input'lar Emma, 55, 60 ve 75 ise output şöyle olmalıdır:

Emma
55
false
75
true

Emma'nın başlangıçta 55 notu vardı ve bu, 60 olan geçme threshold değerini karşılamıyordu. Notu 75'e update edildikten sonra artık passed oluyor!

REQUIRED OUTPUT FORMAT: [Your translated content here]

Kendin dene

-- Student modülünü gerektir
local Student = require('Student')

-- Girdileri oku
local name = io.read()
local initialGrade = tonumber(io.read())
local threshold = tonumber(io.read())
local newGrade = tonumber(io.read())

-- TODO: Verilen isim ve başlangıç notu ile bir öğrenci oluştur

-- TODO: Getter kullanarak öğrencinin ismini yazdır

-- TODO: Getter kullanarak öğrencinin başlangıç notunu yazdır

-- TODO: Öğrencinin verilen eşikle geçip geçmediğini kontrol et ve yazdır

-- TODO: Setter kullanarak öğrencinin notunu güncelle

-- TODO: Öğrencinin yeni notunu yazdır

-- TODO: Not güncellemesinden sonra öğrencinin geçip geçmediğini kontrol et ve yazdır

Nesne Yönelimli Programlama bölümündeki tüm dersler

Kendi başına pratik yap: Online Lua derleyicisi