Menu
CoddyTech

Sistem Manajemen Universitas

Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan JavaScript di Coddy. Pelajaran 55 dari 56.

challenge icon

Tantangan

Dalam tantangan ini, kita memiliki sistem universitas dengan berbagai tipe orang (mahasiswa, profesor) yang memiliki peran dan perilaku berbeda.

1. Lengkapi class Person:

  • Tambahkan method introduce() yang mengembalikan "Hi, I'm ${name}"

2. Lengkapi class Student:

  • Override introduce() agar mengembalikan ${super.introduce()}, a ${this.major} student. Contoh: "Hi, I'm Alice, a Computer Science student"
  • Tambahkan method addGrade(grade) yang menerima nilai antara 0 dan 100
    • Validasi: Periksa apakah nilai berada antara 0 dan 100
    • Jika valid: Tambahkan ke array this.grades
    • Jika tidak valid: Catat: "Grade must be between 0 and 100"

3. Lengkapi class Professor:

  • Override introduce() agar mengembalikan “Prof. ${name} from ${department}”. Contoh: “Prof. Smith from Computer Science”

Coba sendiri

import { Person } from './person.js';
import { Student } from './student.js';
import { Professor } from './professor.js';

// Buat orang
const student1 = new Student('Alice', 20, 'Computer Science');
const prof1 = new Professor('Dr. Johnson', 50, 'Mathematics');

console.log(student1.introduce()); // "Hi, I'm Alice, a Computer Science student"
console.log(prof1.introduce())     // "Prof. Dr. Johnson from Mathematics"

student1.addGrade(85);
student1.addGrade(90);
student1.addGrade(95);
console.log(`${student1.name}'s GPA: ${student1.getGPA()}`); // ~3.6

student1.addGrade(105); // Seharusnya menampilkan di log: "Grade must be between 0 and 100"

Semua pelajaran di Pemrograman Berorientasi Objek

Latihan sendiri: Compiler JavaScript online