
정답공개 ! package NewProject; import java.util.Random; //동물 클래스 class Animal{ Random r = new Random(); String color; String[] colorlist = {"빨간색","주황색","노란색","초록색","파란색","남색","보라색"}; public void print() { System.out.println("나는 동물이다."); } } //강아지 클래스 class Dog extends Animal{ Dog(){ color = colorlist[r.nextInt(colorlist.length)]; } @Override public void print() { System.out.println("나는 " + color + "..

오버로딩에 이어서 오버라이딩이란 개념이 내 블로그에서 첫 등장하는데 오버라이딩(overriding)이란 상속 관계에 있는 부모 클래스에서 이미 정의된 메소드를 자식 클래스에서 같은 시그니쳐를 갖는 메소드로 다시 정의하는 것이다. 내가 풀이한 코드 공개 ! package NewProject; //공룡 클래스 class Dino{ String name; String tall; String kg; public void print() { System.out.println("나는 공룡이다"); } } //티라노사우르스 클래스 class Tirano extends Dino{ Tirano(){ name = "티라노사우르스"; tall = "2M"; kg = "1톤"; } @Override public void pri..

처음으로 오버로딩이라는 개념이 나왔다. 오버로딩이란? 이름이 같은 메소드이지만 성분이 달라서 각기 다른 메소드로써 존재할수있게끔 하는 것을 말한다. 그니까 쉽게 말하면 Hi() 라는 메소드와 Hi(int a) 라는 메소드가 있다. 통상적으로 같은 이름의 메소드 변수 클래스 등은 사용할수없지.........만? 보다시피 안에 매개변수가 들어있는 Hi메소드와 매개변수가 없는 Hi메소드가 있다. 이로써 이름은 같을지라도 오버로딩이 되어있기에 서로 각자 다른 메소드로써 사용이 가능해진다. 매개변수의 수가 다르거나 매개변수의 자료형이 다르거나 등의 이유로 오버로딩이 가능하다. 내가 풀이한 코드를 한번 보자 package NewProject; import java.util.Random; import java.uti..

정답 공개 ! package NewProject; import java.util.Random; import java.util.Scanner; //동물 생성 틀 class Animal{ private String name; private String color; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getColor() { return color; } public void setColor(String color) { this.color = color; } } //동물 생성 틀을 상속받은 강아지 클래스 class Dog extends Animal{ pu..

문제를 잘 이해를 못했는데 내가 이해한게 맞다면 이것이 맞을것이다 ! 오른쪽으로 이동되는건 잘 되는데 왼쪽으로 이동되는게 안되서 어젯밤 1시간반가량동안 머리를 쥐어뜯었다. 결국 강사님께 이메일로 질문을 드렸는데 진짜 바보...... 왼쪽 인덱스로 갈려면 마이너스(-)를 해줬어야했는데 플러스(+)를 해주어서 계속 이상하게 이동됬던 것 이었다. 이렇게 간단한 문제를 못 찾다니 ..... 강사님이 보시고 피드백을 해주시면 항상 바보가 되는 기분이다 ㅠㅠ 쨌든 정답 코드 공개 ! package NewProject; import java.util.Random; import java.util.Scanner; class Monkey{ String color; int bomul; public String getColo..

전 글에서 트롤러 계산기라는 프로그램을 친구들에게 간단하게 보여줬더니 친구 한놈이 아이디어를 냈다. 우리팀 혹은 상대팀에 부캐가 있을 확률과 대리기사가 있을 확률까지 계산해서 승률을 알아보라는 것이다. 오 ~ 재밌겠는데 ~ 하고 해보았다. 미흡하고 조잡하지만 그냥 흥미롭게 봐주면 좋겠다 ... !! 프로그램 설명 : 롤 유저 10명 중 정상인 6명 트롤러 2명 부캐 1명 대리 1명 이란 가정 하에 돌렸고 블루팀 원딜자리에는 내가 들어감. (* 나는 실제로 롤에서 원딜러이다) 난 당연히 정상인으로 고정되서 계산됨. 트롤러 + 5, 정상인 + 15점 , 부캐 + 20점 , 대리 + 30점해서 블루팀 레드팀 총합이 더 큰 쪽이 이기게 판정 동점이면 게임 내용까진 알수없으니 어쩔수없이 draw 세밀한 확률을 얻..

문제 설명 실패안 1 package NewProject; import java.util.Random; import java.util.Scanner; class Monkey{ String color; int bomul; public String getColor() { return color; } public void setColor(String color) { this.color = color; } public int getBomul() { return bomul; } public void setBomul(int bomul) { this.bomul = bomul; } //원숭이가 말하기 public void print() { if(bomul==1) { System.out.println(getColor() ..

내가 만든 문제가 아니라서 문제를 조금 이해하기 어려웠지만 쨌든 내가 해석한 대로 문제를 풀어서 코드를 짜봤다 은근 머리가 아프더라 생각보다 시간이 좀 걸렸다 정답 공개 ! package NewProject; import java.util.Random; //플레이어 생성하는 클래스 (나라,전진거리,레인) class Player{ Random r = new Random(); String country; //나라이름 int result = 0; //전진거리 int rain; //몇번레인 Player(String country,int rain){ this.country = country; this.rain = rain; } public void runandrun() { result += r.nextInt(10..
LOL을 해본 사람들은 트롤 때문에 고생한 기억이 많을 것이다. 문득 궁금해졌다. 난 얼마나 운이 없을까?? 게임을 하면 어느정도의 확률로 트롤러를 만나게 될까? 레드팀 5명 블루팀 5명으로 이루어져 5 VS 5 로 진행되는 게임이다. 레드팀과 블루팀을 각각 다른 객체로써 생성하여 팀원들이 트롤러인지 아닌지를 출력해야한다. 팀을 만들때에는 int 배열 (크기는 5)에다가 0~9까지의 랜덤한 숫자를 넣는다. 숫자가 만약 0일때에는 트롤러로 간주한다. 즉 트롤러는 1/10의 확률로 생성되는 셈이다. 내가 풀이한 코드를 보자 ! package hihihi; import java.util.Random; import java.util.Scanner; //팀 생성기 class MakeTeam{ Random r = ..

정답공개 ! package hihihi; import java.util.Random; import java.util.Scanner; class Com{ Random r = new Random(); public int getnum() { int comnum = r.nextInt(3)+1; return comnum; } } class User{ Scanner sc = new Scanner(System.in); int usernum; public int getnum() { while(true) { System.out.print("가위(1) 바위(2) 보(3) : "); usernum = sc.nextInt(); if(usernum > 0 && usernum