package algorithm;


class WordScrambleEx1 {

public static void main(String[] args) {

String[] strArr = { "CHANGE", "LOVE", "HOPE", "VIEW" };


String answer = getAnswer(strArr);

String question = getScrambledWord(answer);


System.out.println("Question:" + question);

System.out.println("Answer:" + answer);

} // main


public static String getAnswer(String[] strArr) {

// 내용을 완성하세요.

int idx = (int) (Math.random() * strArr.length);

return strArr[idx];


}


public static String getScrambledWord(String str) {

// 내용을 완성하세요.

String temp = "";

String[] strCopy = new String[str.length()];

String scram = "";


for (int i = 0; i < str.length(); i++) {

strCopy[i] = "" + str.charAt(i);

}



for (int i = 0; i < 20; i++) { // 자리바꾸기20번 수행

int j = (int) (Math.random() * str.length());

int k = (int) (Math.random() * str.length());

// System.out.println("k:" + k + " j:" + j);

temp = strCopy[j];

strCopy[j] = strCopy[k];

strCopy[k] = temp;

}


for (int i = 0; i < strCopy.length; i++) {

// System.out.println(strCopy[i]);

scram += strCopy[i];

}


return scram;

} // scramble(String str)

}

'IT 잡다 > sorcecode' 카테고리의 다른 글

7장 연습문제  (0) 2015.04.07
7장 연습문제 19 re  (0) 2015.04.07
BaseballGame 소스코드  (0) 2015.04.03
BaseballGame02  (0) 2015.04.03
BaseballGame  (0) 2015.04.03
Posted by 파란개발자
,

package algorithm;


import java.util.Scanner;


public class BaseballGameN4 {


static int strike = 0;

static int ball = 0;

static int count = 0;


public static void main(String[] args) {


int[] arr = new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };

int[] arrcopy = new int[4];


int temp = 0;


String input = "";


for (int i = 0; i < 100; i++) { // arr 배열의 자리 섞기

int k = (int) (Math.random() * 10);

int m = (int) (Math.random() * 10);

temp = arr[k];

arr[k] = arr[m];

arr[m] = temp;

}


System.arraycopy(arr, 0, arrcopy, 0, arrcopy.length); // arr의 앞4개 값을

 // arrcopy로 복사

for (int i = 0; i < arrcopy.length; i++) { // arrcopy의 값을 출력(참고용)

System.out.print(arrcopy[i]);

}

System.out.println();

Scanner s = new Scanner(System.in);


do {

System.out.println("숫자 4개를 입력하세요");

strike = 0; // do while 문이 돌때마다 값을 초기화

ball = 0;

input = "";


for (int i = 0; i < arrcopy.length; i++) {

input += s.next(); // 숫자4개 입력받음

}


for (int i = 0; i < input.length(); i++) {

for (int j = 0; j < arrcopy.length; j++) {

if (i == j && ((input.charAt(i)) - '0') == arrcopy[j]) {

strike++;

} else if (((input.charAt(i)) - '0') == arrcopy[j]) {

ball++;

} else {


}

}

}


count++;


if (strike == 4) {


System.out.print(strike + "strike입니다. ");


if (count < 7) {

System.out.println("훌륭합니다!!!");

} else if (count >= 7 && count < 14) {

System.out.println("매우잘했습니다.");

} else {

System.out.println("잘했습니다.");

}


System.out.println("시도회수는" + count + "번입니다");

break;

} else {

System.out.println(strike + "strike, " + ball + "ball 입니다.");


}


} while (true);


}


}



'IT 잡다 > sorcecode' 카테고리의 다른 글

7장 연습문제 19 re  (0) 2015.04.07
wordScramble2  (0) 2015.04.06
BaseballGame02  (0) 2015.04.03
BaseballGame  (0) 2015.04.03
Baseball05  (0) 2015.04.03
Posted by 파란개발자
,

package algorithm;


import java.util.Scanner;


public class BaseballGame02 { // 숫자 개수 4개로


static int strike = 0;


static int ball = 0;


public static void main(String[] args) {


int count = 0; // 맞추기를 몇번시도했는지 (시도횟수)저장할 변수


String [] arr = new String[] { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" };


String copy = "" ; // 랜덤한 4자리를 저장할 변수


String input = ""; // 4자리 수를 입력받는 변수


for (int x = 0; x < 100; x++) { // arr 배열 자리바꾸기 100번

int j = (int) (Math.random() * arr.length);

int k = (int) (Math.random() * arr.length);

String temp = "";


temp = arr[j];

arr[j] = arr[k];

arr[k] = temp;

}


//System.arraycopy(arr, 0, arrCopy, 0, arrCopy.length); // arr 의 앞4개 숫자를  arrCopy로 복사

for(int i = 0; i < 4; i++) { // arr 의 앞4개 숫자를  copy로 복사

copy+=arr[i];

}

for (int i = 0; i < 4; i++) {

System.out.println(copy.charAt(i));

}


do {

strike = 0;

ball = 0;


System.out.println("4개의숫자를 입력하세요");

Scanner s = new Scanner(System.in);


for (int i = 0; i < 4; i++) {

input += s.next();

}


for (int i = 0; i < 4; i++) {

for (int j = 0; j < copy.length(); j++) {

if (i==j && input.charAt(i) == copy.charAt(j)) {

++strike;

} else if (input.charAt(i) == copy.charAt(j)) {

++ball;

}

}

}

System.out.println(strike + "strike, " + ball + "ball 입니다.");

count++;

if(strike == 4) {

System.out.println("4 Strike 입니다." + count + "회 만에 맞췄습니다. ");

if (count < 5) {

System.out.println("매우 잘했습니다.");

} else if (count < 10 && count >= 5) {

System.out.println("잘했습니다.");

} else {

System.out.println("보통입니다.");

}

break;

}

} while (true);



}

}



'IT 잡다 > sorcecode' 카테고리의 다른 글

7장 연습문제 19 re  (0) 2015.04.07
wordScramble2  (0) 2015.04.06
BaseballGame 소스코드  (0) 2015.04.03
BaseballGame  (0) 2015.04.03
Baseball05  (0) 2015.04.03
Posted by 파란개발자
,