はじめに
このチャレンジでは、デジタル時代において学校が効率的に学生情報を管理できるよう、堅牢で安全な C++ の学生管理クラスを設計していただきます。目標は、名前、年齢、GPA(成績平均点)を保持する非公開(private)データメンバを持つ Student クラスを作成し、それらの情報を設定・表示するための公開(public)メソッドを実装することです。
学生管理システムの設計
デジタル時代において、学校には学生情報を管理するための効率的な手法が求められています。あなたの任務は、C++ を使用して堅牢で安全な学生管理クラスを作成することです。
タスク
name(名前)、age(年齢)、gpa(成績)を非公開データメンバとして持つStudentクラスを作成する- 学生情報を設定するための公開セッター(setter)メソッドを実装する
- 学生情報を表示するための公開メソッドを作成する
要件
Studentクラスを作成し、非公開データメンバとしてname(string 型)、age(int 型)、gpa(double 型) を定義してください。文字列の引数を受け取り、名前が空でないことを検証する
setNameメソッドを実装してください。整数の引数を受け取り、年齢が 0 から 120 の範囲内であることを検証する
setAgeメソッドを実装してください。double 型の引数を受け取り、GPA が 0.0 から 4.0 の範囲内であることを検証する
setGPAメソッドを実装してください。以下の形式で学生情報を出力する
displayInfoメソッドを作成してください。Student Name: <name> Student Age: <age> Student GPA: <gpa>実装したコードは
~/project/student.cppファイルに保存してください。必要なヘッダーファイル
<iostream>および<string>を含めてください。
実行例
プログラムを実行して、実装をテストしてください。
g++ student.cpp -o student
./student
プログラムの出力例:
Student Name: Alice Johnson
Student Age: 20
Student GPA: 3.75
ヒント
- データメンバには
privateアクセス指定子を使用してください。 - 適切な入力検証(バリデーション)を行うセッターメソッドを作成してください。
- 名前には
std::stringを使用してください。 - 年齢と GPA の範囲チェックを実装してください。
まとめ
まとめとして、このチャレンジでは、名前、年齢、GPA を含む学生情報を効率的に保存・表示できる C++ の学生管理クラスを設計しました。std::string(名前)、int(年齢)、double(GPA)といった指定された要件を満たすために、非公開データメンバと公開セッターメソッドを実装しました。最終的な実装は ~/project/student.cpp ファイルに保存されています。



