package com.test;
import java.util.Random;
public class Baseball {
//- 중복되지 않는 특정 범위의 특정 자릿수의 숫자를 랜덤하게 발생시키는 메소드 구현
public int[] randomNumber(int start, int end, int size) {
int[] result = new int[size];
//start~end까지의 수를 배열에 초기값으로 지정
int count = (end-start)+1;
int[] arr = new int[count];
for (int a=0, b=start; a<arr.length; a++) {
arr[a] = b++;
}
//arr배열을 섞기~
Random rd = new Random();
for (int a=0; a<arr.length*100; a++) {
int index = rd.nextInt(count);
int temp = arr[0];
arr[0] = arr[index];
arr[index] = temp;
}
//원하는 자릿수만큼 result 배열에 넣기 ㅇㅇ
for (int a=0; a<size; a++) {
result[a] = arr[a];
}
return result;
}
}
package com.test;
import java.util.Arrays;
import java.util.Scanner;
public class Class18 {
public static void main(String[] args) {
//입력
Scanner sc = new Scanner(System.in);
System.out.print("난수 갯수(2~20)?");
int size = sc.nextInt();
Baseball obj = new Baseball();
int[] random = obj.randomNumber(1, 100, size);
Arrays.sort(random);
System.out.print("난수 결과 : ");
for (int a=0; a<random.length; a++) {
System.out.printf("%d ", random[a]);
}
System.out.println();
}
}
package com.test;
import java.util.Random;
public class Baseball2 {
//멤버변수 등록
private int strike, ball;
//멤버변수의 getter 등록.
public int getStrike() {
return strike;
}
//멤버변수의 getter 등록.
public int getBall() {
return ball;
}
//- 중복되지 않는 특정 범위의 특정 자릿수의 숫자를 랜덤하게 발생시키는 메소드 구현
public int[] randomNumber(int start, int end, int size) {
int[] result = new int[size];
//start~end까지의 수를 배열에 초기값으로 지정
int count = (end-start)+1;
int[] arr = new int[count];
for (int a=0, b=start; a<arr.length; a++) {
arr[a] = b++;
}
//arr배열을 섞기~
Random rd = new Random();
for (int a=0; a<arr.length*100; a++) {
int index = rd.nextInt(count);
int temp = arr[0];
arr[0] = arr[index];
arr[index] = temp;
}
//원하는 자릿수만큼 result 배열에 넣기 ㅇㅇ
for (int a=0; a<size; a++) {
result[a] = arr[a];
}
return result;
}
//- 사용자가 입력한 숫자를 기존의 숫자와 비교해서 strike, ball 카운트하는 메소드 구현
public void numberCheck(int[] user, int[] comp) {
strike = 0;
ball = 0;
for (int a=0; a<user.length; a++) {
for (int b=0; b<comp.length; b++) {
if (user[a] == comp[b]) {
if(a==b){
strike++;
} else {
ball++;
}
}
}
}
}
}
package com.test;
import java.util.*;
public class Class19 {
public static void main(String[] args) {
//입력
Scanner sc = new Scanner(System.in);
System.out.print("원하는 자릿수 입력(2~10)?");
int size = sc.nextInt();
//처리
Baseball2 obj = new Baseball2();
int[] comp = obj.randomNumber(0, 9, size);
//검수를 위한 샘플정답 출력
System.out.printf("랜덤 숫자(%d자리) 발생 완료!%n", size);
System.out.print("(샘플정답: ");
for (int a=0; a<comp.length; a++) {
System.out.printf("%d", comp[a]);
}
System.out.println(")");
do{
//입력
System.out.printf("%d자리 숫자 입력(-1:종료)?", size);
String str = sc.next();
if(str.equals("-1")) {
break;
}
//처리
int[] user = new int[size];
for (int a=0; a<user.length; a++) {
user[a] = Integer.parseInt(str.substring(a, a+1));
}
obj.numberCheck(user, comp);
//출력
if (obj.getStrike() == size) {
System.out.println("정답입니다!");
break;
} else {
System.out.printf("%d Strike, %d Ball%n", obj.getStrike(), obj.getBall());
}
} while(true);
}
}
package com.test;
public class MemberCheck {
public boolean memberCheck(String id, String pw) {
boolean result = false;
if(id.equals("admin") && pw.equals("qwer")){
result = true;
}
if(id.equals("test") && pw.equals("1234")){
result = true;
}
if(id.equals("redccoma") && pw.equals("asdf")){
result = true;
}
return result;
}
}
package com.test;
import java.util.*;
public class Class20 {
public static void main(String[] args) {
//입력
Scanner sc = new Scanner(System.in); //데이터입력받는 클래스
System.out.print("아이디:");
String id = sc.next();
System.out.print("패스워드:");
String pw = sc.next();
//처리
MemberCheck obj = new MemberCheck();
boolean result = obj.memberCheck(id, pw);
//출력
if (result) {
System.out.printf("%s님, 환영합니다.", id);
} else {
System.out.println("당신은 회원이 아닙니다.");
}
}
}
package com.test;
public class SumNumber {
private int num1, num2; // num1:짝수, num2:홀수
public int getNum1() {
return num1;
}
public int getNum2() {
return num2;
}
public void sum(int num1, int num2) {
for(int a=num1; a<=num2; a++) {
if (a%2 == 0) {
this.num1 += a;
} else {
this.num2 += a;
}
}
}
}
package com.test;
import java.util.*;
public class Class21 {
public static void main(String[] args) {
//입력
Scanner sc = new Scanner(System.in);
System.out.print("숫자 입력(a,b)?");
int num1 = sc.nextInt();
int num2 = sc.nextInt();
//처리
SumNumber obj = new SumNumber();
obj.sum(num1, num2);
int sum1 = obj.getNum1();
int sum2 = obj.getNum2();
//출력
System.out.printf("짝수들의 합: %d%n", sum1);
System.out.printf("홀수들의 합: %d%n", sum2);
}
}
package com.test;
public class Calc {
public int sum2(int num1, int num2, int num3) {
int result = 0;
for(int a=num1; a<=num2; a++) {
if (a%num3 == 0) {
result += a;
}
}
return result;
}
}
package com.test;
import java.util.*;
public class Class22 {
public static void main(String[] args) {
//입력
Scanner sc = new Scanner(System.in);
System.out.print("배수 지정(2~9)?");
int num = sc.nextInt();
//처리
Calc obj = new Calc();
int result = obj.sum2(1, 100, num);
//출력
System.out.printf("%d의 배수들의 합 : %d%n", num, result);
}
}
package com.test;
public class Calc3 {
private int sumx, sumy, sumxy;
public int getSumx() {
return sumx;
}
public int getSumy() {
return sumy;
}
public int getSumxy() {
return sumxy;
}
public void sum3(int n, int m, int x, int y) {
for (int a=n; a<=m; a++) {
if (a%x == 0) {
sumx += a;
}
if (a%y == 0) {
sumy += a;
}
if (a%(x*y) == 0) {
sumxy += a;
}
}
}
}
package com.test;
import java.util.Scanner;
public class Class23 {
public static void main(String[] args) {
//입력
Scanner sc = new Scanner(System.in);
System.out.print("배수 지정1(2~9)?");
int num1 = sc.nextInt();
System.out.print("배수 지정2(2~9)?");
int num2 = sc.nextInt();
//처리
Calc3 obj = new Calc3();
obj.sum3(1, 100, num1, num2);
//출력
System.out.printf("%d의 배수들의 합 : %d %n"
,num1
,obj.getSumx());
System.out.printf("%d의 배수들의 합 : %d %n"
,num2
,obj.getSumy());
System.out.printf("%d와 %d의 배수들의 합 : %d %n"
,num1
,num2
,obj.getSumxy());
}
}
package com.test;
public class Calc4 {
private int sum;
public int getSum() {
return sum;
}
public void setSum(int n) {
this.sum += n;
}
}
package com.test;
import java.util.Scanner;
public class Class24 {
public static void main(String[] args) {
//입력
Scanner sc = new Scanner(System.in);
Calc4 obj = new Calc4();
StringBuilder sb = new StringBuilder();
do {
System.out.print("숫자 입력(양의 정수)?");
int num = sc.nextInt();
if (num == -1) {
break;
}
//처리
obj.setSum(num);
sb.append(String.format("%d ", num));
//출력
System.out.println(sb.toString());
}while(true);
System.out.printf("현재까지 입력된 숫자들의 합 : %d %n"
, obj.getSum());
}
}