기타

2023-06-22 연습장

쿠키키키키 2023. 6. 22. 13:48

// 문제 : 아래가 실행되도록 해주세요.

// 조건 : 배열을 사용할 수 없습니다.

 

class Main {

public static void main(String[] args) {

사람인력관리소 a사람인력관리소 = new 사람인력관리소();

 

a사람인력관리소.add사람("홍길순", 33);

// 나이가 33살인 1번째 사람(홍길순)이 추가되었습니다.

a사람인력관리소.add사람("홍길동", 20);

// 나이가 20살인 2번째 사람(홍길동)이 추가되었습니다.

a사람인력관리소.add사람("임꺽정", 30);

// 나이가 30살인 3번째 사람(임꺽정)이 추가되었습니다.

 

사람 a사람1 = a사람인력관리소.get사람(1);

a사람1.자기소개();

// 저는 1번, 홍길순, 33살 입니다.

 

사람 a사람2 = a사람인력관리소.get사람(2);

a사람2.자기소개();

// 저는 2번, 홍길동, 20살 입니다.

 

사람 a사람3 = a사람인력관리소.get사람(3);

a사람3.자기소개();

// 저는 3번, 임꺽정, 30살 입니다.

}

}

 

class 사람인력관리소 {

int i = 1;

사람 a사람0; // add 함수에서 나온 사람들 정보를 저장한는 곳으로 쓸거

사람 a사람1;

사람 a사람2;

 

void add사람(String name, int age) {

System.out.printf("나이가 %s인 %d번째 사람(%s)이 추가되었습니다.\n", age, i, name);

 

사람 a사람 = new 사람();

a사람.이름 = name;

a사람.나이 = age;

if (i == 1) { // 번호가 1,2,3 인 사람들의 정보 저장해두기, 함수가 끝나면 정보가 날라가기때문에

a사람0 = a사람;

} else if (i == 2) {

a사람1 = a사람;

} else if (i == 3) {

a사람2 = a사람;

}

i++;

}

 

사람 get사람(int i) {

if (i == 1) {

return a사람0;

} else if (i == 2) {

return a사람1;

}

 

else if (i == 3) {

return a사람2;

}

 

return new 사람();

}

}

 

class 사람 {

int a = 1;

int 번호;

String 이름;

int 나이;

 

void 자기소개() {

 

System.out.printf("저는 %d번 %s, %d 살 입니다.\n", a, 이름, 나이);

a++;

}

 

사람() {

 

}

 

package s;

 

class Main {

public static void main(String[] args) {

전사 a전사1 = new 전사();

 

a전사1.a왼손무기 = new ();

 

a전사1.공격();

// 출력 => 전사가 왼손으로 칼(을)를 사용합니다.

 

전사 a전사2 = new 전사();

a전사2.a왼손무기 = new ();

a전사2.a오른손무기 = new 도끼();

a전사2.공격();

// 출력 => 전사가 왼손으로 창(을)를 사용합니다.

// 출력 => 전사가 오른손으로 도끼(을)를 사용합니다.

}

}

 

class 전사 {

무기 a왼손무기;

무기 a오른손무기;

String hand;

void 공격() {

if (a왼손무기 != null) {

hand="왼손";

a왼손무기.동작(hand);

}

if (a오른손무기 != null) {

hand="오른손";

a오른손무기.동작(hand);

}

 

}

}

 

class 무기 {

 

void 동작(String hand) {

 

}

}

 

class extends 무기 {

void 동작(String hand) {

System.out.printf("%s 으로 칼을 사용 \n",hand);

}

}

 

class extends 무기 {

void 동작(String hand) {

System.out.printf("%s 으로 창을 사용 \n",hand);

}

}

 

class 도끼 extends 무기 {

void 동작(String hand) {

System.out.printf("%s 으로 도끼을 사용\n",hand);

}

}

package s;

 

// 문제 : 아래와 같이 출력 되도록 해주세요.

// 조건 : 생성자를 단 1개만 사용해주세요.

 

class Main {

public static void main(String[] args) {

int 엄지손가락_길이 = new 사람().a왼팔.a손.a엄지손가락.길이;

 

System.out.println(엄지손가락_길이 + "cm");

// 출력 : 5cm

}

}

 

class 사람 {

a왼팔;

a손;

손가락 a엄지손가락;

사람() {

a왼팔 = new ();

a왼팔.a손= new ();

a왼팔.a손.a엄지손가락= new 손가락();

a왼팔.a손.a엄지손가락.길이=5;

}

}

 

class {

a손;

 

}

 

class {

손가락 a엄지손가락;

 

 

}

 

class 손가락 {

int 길이;

}

'기타' 카테고리의 다른 글

사람인력관리소 연습장  (0) 2023.06.23
중국집 예제문제  (0) 2023.06.21