실습) 다음 내용을 만족하는 학생 클래스를 정의하시오. 목적: 멤버 속성의 이해 학생은 생성할 때 학생 번호와 학생 이름을 전달받습니다. |
*2019년 공주대에서 |
예제 소스) StudentA.cs (자바 스타일) |
using System;
namespace 캡슐화_실습2___학생 { //자바 혹은 CPP 스타일 class StudentA { int num; public int GetNum() { return num; }
string name; public string GetName() { return name; }
int[] scores = new int[3]; public void SetKorea(int score) { if (score > 100) { score = -1; } if (score < 0) { score = -1; } scores[0] = score; } public int GetKorea() { return scores[0]; }
public void SetMath(int score) { if (score > 100) { score = -1; } if (score < 0) { score = -1; } scores[1] = score; } public void SetEnglish(int score) { if (score > 100) { score = -1; } if (score < 0) { score = -1; } scores[2] = score; }
public int GetMath() { return scores[1]; } public int GetEnglish() { return scores[2]; } public StudentA(int num, string name) { this.num = num; this.name = name; scores[0] = -1; scores[1] = -1; scores[2] = -1; }
public int GetTotal() { int sum = 0; for(int i=0;i<3;i++) { if(scores[i]!=-1) { sum += scores[i]; } } return sum; } public int GetAverage() { return GetTotal() / 3;// cnt; } public override string ToString() { return string.Format("{0},{1}", num, name); } } }
|
Student.cs |
using System;
namespace 캡슐화_실습2___학생 { class Student { //int num; public int Num { get; private set; } //string name; public string Name { get; private set; } int[] scores = new int[3]; public int Korea { get { return scores[0]; } set { if(value>100) { value = -1; } if(value<0) { value = -1; } scores[0] = value; } } public int English { get { return scores[1]; } set { if (value > 100) { value = -1; } if (value < 0) { value = -1; } scores[1] = value; } } public int Math { get { return scores[2]; } set { if (value > 100) { value = -1; } if (value < 0) { value = -1; } scores[2] = value; } } public int Total { get { int sum = 0; for (int i = 0; i < 3; i++) { if (scores[i] != -1) { sum += scores[i]; } } return sum; } } public int Average { get { return Total / 3; } }
public Student(int num,string name) { Num = num; Name = name; scores[0] = -1; scores[1] = -1; scores[2] = -1; } public override string ToString() { return string.Format("{0},{1}", Num, Name); } } }
|
Program.cs |
using System;
namespace 캡슐화_실습2___학생 { class Program { static void Main(string[] args) { StudentA stua = new StudentA(3, "홍길동"); stua.SetKorea(80); stua.SetEnglish(120); stua.SetMath(-23); Console.WriteLine(stua); Console.WriteLine("국:{0}", stua.GetKorea()); Console.WriteLine("영:{0}", stua.GetEnglish()); Console.WriteLine("수:{0}", stua.GetMath()); Console.WriteLine("합:{0}", stua.GetTotal()); Console.WriteLine("평:{0}", stua.GetAverage());
Student stu = new Student(3, "홍길동"); stu.Korea = 80;// stua.SetKorea(80); stu.English = 120; // stua.SetEnglish(120); stu.Math = -23; // stua.SetMath(-23); Console.WriteLine(stu);//Console.WriteLine(stua); Console.WriteLine("국:{0}", stu.Korea); //Console.WriteLine("국:{0}", stua.GetKorea()); Console.WriteLine("영:{0}", stu.English); //Console.WriteLine("영:{0}", stua.GetEnglish()); Console.WriteLine("수:{0}", stu.Math); //Console.WriteLine("수:{0}", stua.GetMath()); Console.WriteLine("합:{0}", stu.Total); //Console.WriteLine("합:{0}", stua.GetTotal()); Console.WriteLine("평:{0}", stu.Average); //Console.WriteLine("평:{0}", stua.GetAverage()); } } }
|
'언어 자료구조 알고리즘 > 프로그래밍 실습' 카테고리의 다른 글
[C#] 컬렉션 실습 - IList 인터페이스 구현 약속한 컬렉션 (0) | 2019.08.09 |
---|---|
[C#] 상속과 다형성 실습 - 학생, 학사학생, 마법학생, 운동학생 (0) | 2019.08.09 |
[C#] 상속과 다형성 - 상품, 할인상품 (0) | 2019.08.08 |
[C#] 상속과 다형성 실습 - 밴드(음악가, 피아니스트, 드러머) (0) | 2019.08.08 |
[C#] 캡슐화 - 학생 클래스 정의, 인덱서 포함 (0) | 2019.08.08 |
[C#] 캡슐화 실습 - 복소수 정의(멤버 필드와 멤버 속성) (0) | 2019.08.08 |
[C#] 제어문 - 퀴즈 abc + cca = 1ab2 (0) | 2019.08.08 |
[C#] 제어문 - 정사각형 출력 (0) | 2019.08.07 |
[C#] 제어문 - 삼각형 출력 (0) | 2019.08.07 |
제안서 예 (0) | 2019.03.05 |