스포츠마케터의 초보 개발자 도전기
JAVA study 09 본문
예제1) 입력값을 암호값으로 바꿔라
package ex3_work;
import java.util.Scanner;
public class Ex2_work {
public static void main(String[] args) {
// 값 : abc123
// 결과 : `~!wer
Scanner sc = new Scanner(System.in);
System.out.println("값을 입력하세요");
String input = sc.next();
String a = "abcdefzhijklmnopqrstuvwxyz0123456789";
String b = "`~!@#$%^&*()-_+=|[]{};:,./qwertyuiop";
char[] aArr = a.toCharArray(); //Sting type to char를 배열에 입력, 공백도 인식하니 주의
char[] bArr = b.toCharArray();
for (int i = 0; i < input.length(); i++) {
for (int j = 0; j < bArr.length; j++) {
char c = input.charAt(i);
if (c == aArr[j]) {
System.out.print(bArr[j]);
break;
}
}
}
System.out.println();
}// main
}
예제2) 숫자만 있으면 true, 다른문자 섞이면 false
package ex3_work;
import java.util.Scanner;
public class Ex3_work {
public static void main(String[] args) {
// 키보드에서 값을 입력받고, 숫자로만 이루어진 값이라면 true,
// 그렇지 않으면 false를 출력
// 값 입력받기
Scanner sc = new Scanner(System.in);
System.out.print("입력 : ");
String input = sc.next();
// 문자 있는지 확인
boolean check = true;
for (int i = 0; i < input.length(); i++) {
char ch = input.charAt(i);
if (ch >= '0' && ch <= '9') {
check = true;
} else {
check = false;
break;
}
} // for
System.out.println(check);
// tCode
int cnt = 0;
for (int i = 0; i < input.length(); i++) {
char ch = input.charAt(i);
if (ch >= '0' && ch <= '9') {
cnt++;
}
} // for
if (input.length() == cnt) {
System.out.println("true");
} else {
System.out.println("false");
}
}// main
}
예제3 ) 문장의 홀수 문자만 출력
package ex3_work;
import java.util.Scanner;
public class Ex4_work {
public static void main(String[] args) {
// 문장입력받고 : helloWorld
// 홀수번째 글자만 추출
Scanner sc = new Scanner(System.in);
System.out.println("입력 : ");
String input = sc.next();
for (int i = 0; i < input.length(); i += 2) {
System.out.print(input.charAt(i));
} // for
System.out.println("----------------------");
String res = "";
for (int i = 0; i < input.length(); i++) {
if (i % 2 == 0) {
res += input.charAt(i);
}
}
System.out.println(res);
}// main
}
예제4) 중복문자 지우고 하나만 표시하기
package ex3_work;
import java.util.Scanner;
public class Ex5_work {
public static void main(String[] args) {
// 키보드에서 값을 입력받고, 중복값을 제가헌 결과를 출력하세요
// -------------
// 입력 : aabbcca
// 출력 : abc
Scanner sc = new Scanner(System.in);
System.out.print("입력 : ");
String input = sc.next();
String res = "";
// 현재 문자(ch)가 이전에 등장한 적이 없다면 (-1) result에 추가
for (int i = 0; i < input.length(); i++) {
char ch = input.charAt(i);
if (res.indexOf(ch) == -1) {
res += ch;
}
} // for
System.out.println(res);
}// main
}
과제) 난수 중 같은 숫자 갯수 찾아내서 그래프 그리기
package ex3_work;
import java.util.Random;
public class Ex6_work {
public static void main(String[] args) {
// 0~9까지 난수 100개를 만들고
// 만들어진 100개의 난수에서 0~9까지 갯수를 판다하여 그래프로 표기하시오
// 0의 갯수 : ########## 10
// 1의 갯수 : ######## 8
// .....
// 난수 100개 생성
int[] res = new int[10];
for (int i = 0; i < 100; i++) {
int rNum = new Random().nextInt(10);
// System.out.print(rNum);
res[rNum]++; // 난수를 0-9까지의 배열에 +
}
for (int i = 0; i < res.length; i++) {
System.out.printf("%d의 갯수 : ", i);
for (int j = 0; j < res[i]; j++) {
System.out.print("#");
}
System.out.print(" " + res[i]);
System.out.println();
}
}// main
'develop > JAVA' 카테고리의 다른 글
JAVA study 11 (1) | 2024.03.12 |
---|---|
JAVA study 10 (0) | 2024.03.11 |
JAVA study 08 (0) | 2024.03.07 |
JAVA study 07 (0) | 2024.03.06 |
JAVA study 06 (0) | 2024.03.05 |