-
231012_JavaCoding Class 2023. 10. 13. 10:16
package myProject; public class Ex4_12 { public static void main(String[] args) { // TODO Auto-generated method stub int i= 5; System.out.println(i); while(i-- != 0) { // 증감식 --로 인해 반복 할 때마다 1씩 감소, 처음에는 5 // i가 0과 동일하지 않으면 1씩 감소한 뒤 반복, 동일하면 반복 멈춤... System.out.println(i + " - I can do it."); //5에서 -- 되어 4가 됨. 4가 위로 올라가서 다시 4 != 0 이므로 반복. // i+ - I can do it. 출력. } } }
package myProject; import java.util.*; public class Ex4_14 { public static void main(String[] args) { // TODO Auto-generated method stub int num = 0, sum = 0; //변수 선언 + 정의 + 초기화 initialization //변수 선언 + 정의 : int num; //모든 언어에서 반드시 초기화 필요: 누적 변수 int hap = 0; System.out.print("숫자를 입력하세요.(예:12345)>"); Scanner scanner = new Scanner(System.in); //키보드로 숫자 입력 -> 문자형 -> 수로 변환 필요 String tmp = scanner.nextLine(); // 화면을 통해 입력받은 내용을 tmp에 저장 (입력받은 숫자를 문자형으로) num = Integer.parseInt(tmp); // 입력받은 문자열(tmp)을 숫자로 변환 (문자형을 수로 변환) //integer: 정수형 클래스, 문자열 클래스: string while(num != 0) { // num을 10으로 나눈 나머지를 sum에 더함 sum += num%10; // sum = sum + (num % 10); System.out.printf("sum=%3d num=%d%n", sum, num); num /= 10; // num = num / 10; num을 10으로 나눈 값을 다시 num에 저장 } System.out.println("각 자리수의 합:"+sum); } }
package myProject; import java.util.*; public class Ex4_15 { public static void main(String[] args) { // TODO Auto-generated method stub int input = 0, answer = 0; answer = (int)(Math.random() * 100) + 1; // 1~100 사이의 임의의 수를 저장 Scanner scanner = new Scanner(System.in); do { System.out.print("1과 100사이의 정수를 입력하세요.>"); input = scanner.nextInt(); if(input > answer) { System.out.println("더 작은 수로 다시 시도해보세요."); } else if(input < answer) { System.out.println("더 큰 수로 다시 시도해보세요."); } } while(input!=answer); System.out.println("정답입니다."); } }
package myProject; import java.util.*; public class Ex4_18 { public static void main(String[] args) { // TODO Auto-generated method stub int menu = 0; int num = 0; Scanner scanner = new Scanner(System.in); // while(true) { // System.out.println("1. square"); // System.out.println("2. square root"); // System.out.println("3. log"); // System.out.print("원하는 메뉴(1~3)를 선택하세요.(종료:0)>"); // // String tmp = scanner.nextLine(); // 화면에서 입력받은 내용을 tmp에 저장 // menu = Integer.parseInt(tmp); // 입력받은 문자열(tmp)을 숫자로 변환 // // if(menu==0) { // System.out.println("프로그램을 종료합니다."); // break; // } else if (!(1 <= menu && menu <= 3)) {//1보다 크거나 같다 and 3보다 작거나 같다... 가 맞지 않다면. (!부정 연산자) // System.out.println("메뉴를 잘못 선택하셨습니다.(종료는 0)"); // continue; // while(true) 를 다시 실행 // } // System.out.println("선택하신 메뉴는 "+ menu +"번입니다."); // } //while-switch 전환 while(true) { System.out.println("1. square"); System.out.println("2. square root"); System.out.println("3. log"); System.out.print("원하는 메뉴(1~3)를 선택하세요.(종료:0)>"); String tmp = scanner.nextLine(); // 화면에서 입력받은 내용을 tmp에 저장 menu = Integer.parseInt(tmp); // 입력받은 문자열(tmp)을 숫자로 변환 switch(menu) { case 0 : System.out.println("프로그램을 종료합니다."); return; //자신을 호출한 상위로 이동함. 종료... while문은 case 0 를 호출한게 아님. 와일문은 실행문. case 1 : case 2 : case 3 : System.out.println("선택하신 메뉴는 "+ menu +"번입니다."); break; default: System.out.println("메뉴를 잘못 선택하셨습니다.(종료는 0)"); continue; } } } }
package myProject; import java.util.Arrays; public class Ex5_4 { public static void main(String[] args) { // TODO Auto-generated method stub int[] numArr = {0,1,2,3,4,5,6,7,8,9}; System.out.println(Arrays.toString(numArr)); for (int i=0; i < 100; i++ ) { int n = (int)(Math.random() * 10); // 0~9 중의 한 값을 임의로 얻는다. int tmp = numArr[0]; //0번을 tmp에 주고 numArr[0] = numArr[n]; // 교환... n은 randum을 의미. 만약 n의 수가 3이면 numArr[n] = tmp; //n에 3을 부여, tmp. } System.out.println(Arrays.toString(numArr)); String str = Arrays.toString(numArr); // toString 결과를 String 변수에 저장 System.out.println(str.charAt(0)); //[0]번을 출력함 int len = str.length(); String sub = str.substring(5); String sub2 = str.substring(1,5); // 끝은 index-1 까지, 5-1=4 임... System.out.println( len + "\nfrom 5 :" + sub + "\nfrom 1 to 5->" + sub2); } }
//package myProject; public class Ex5_7 { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("parameter:"+args.length); for(int i=0;i< args.length;i++) { System.out.println("args[" + i + "] = \""+ args[i] + "\""); } } }
Training 교수님과 함께 진행한 실습
package myProject; public class Training_4 { public static void main(String[] args) { // TODO Auto-generated method stub // Break 실습 : 1~100 수 중 77이면 반복문 종료 int num = 0; int i = 0; while(true) { if(num == 77) break; ++i; num += i; } // Break 실습 : 1~100 수 중 77이면 반복문 종료 (교수님) System.out.println("num=" + num); for (int j = 1; j <=100; j++) { if(j == 77) break; System.out.println(j); } } }
package myProject; public class Training_5 { public static void main(String[] args) { // TODO Auto-generated method stub // 범위는 1~30 사이, 난수 20개 출력하기 int answer = 0; for (int i = 1; i<=20; i++){ // 20번을 반복해서 int num = (int)(Math.random() * 30)+1 ; // 1~30 사이 난수를 만듦 System.out.print(num + "\t"); // 만들어낸 난수를 출력함 } // 범위는 1~30 사이, 난수 20개 생성 // 중복되는 난수를 비교하고, 중복되면 do 문을 반복해서 난수를 재 생성. // int answer = 0; // // for (int i = 1; i<=20; i++){ // 20번을 반복해서 // int num; // boolean data; // // do { // num = (int)(Math.random() * 30) + 1; // 1~30 사이 난수를 만듦 // data = (answer == num); // 중복 여부 확인 // } while (data); // // answer = num; // 중복되지 않는 난수를 answer에 저장 // System.out.print(num + "\t"); // } // // } }
package myProject; import java.util.Arrays; public class Training_6 { public static void main(String[] args) { // TODO Auto-generated method stub int[] number = { 30, 20, 15, 70, 80 }; //배열 선언(정의)과 초기화 //갯수만큼 배열방 생성. System.out.println(number[0]); number[1] = 100; System.out.println(number[1]); int[] arr1 = new int[5]; //배열 선언+정의, 동적 메모리에 배열 객체 생성 arr1[3] = 300; System.out.println(arr1[3]); System.out.println("arr1[0]=" + arr1[0]); //System.out.println("arr1[5]=" + arr1[0]); //out of bound5 .. index는 4번까지밖에 없어서 에러 뜸. int[] arr2 = new int[] {1,2,3,4,5,6,7,8,9}; //배열 선언+정의+초기화, 동적 메모리에 객체 생성(값) arr2[4] = 400; System.out.println(arr2[4]); for(int i = 0; i < arr2.length; i++) System.out.print(arr2[i] + "\t"); System.out.println("\n"+Arrays.toString(arr2)); } }
package myProject; public class Training_7 { public static void main(String[] args) { // TODO Auto-generated method stub //난수 10개를 생성해서 정수 배열에 저장 후 출력하기 int[] number = new int[10]; //number라는 배열을 10개 만들고 int rnd; int sum = 0; float average = 0f; for (int i = 0; i < number.length; i++){ // 10번을 반복해서 rnd = (int)(Math.random() * 30)+1 ; // 1~30 사이 난수를 만듦 number[i] = rnd; //rnd 에 정수를 집어넣은 뒤 System.out.print(number[i] + " "); // 만들어낸 난수를 출력함 sum += number[i]; //모든 난수의 합을 sum에 저장 } average = sum/(float)number.length; //배열에 저장된 난수들의 합, 평균 출력 System.out.println("총합 : " + sum); System.out.println("평균 : " + average); //number의 값 중 최대값, 최소값 출력 int max = number[0]; //최댓값을 첫 번째 값으로 초기화 int min = number[0]; //최솟값을 첫 번째 값으로 초기화 for (int i = 0; i < number.length; i++) { if(number[i] > max) max = number[i]; else if(number[i] < min ) min = number[i]; } System.out.println("max=" + max); System.out.println("min=" + min); } }
package myProject; public class Training_8 { public static void main(String[] args) { // TODO Auto-generated method stub //실습: 어린왕자 텍스트 중 'a' 의 개수 세기 //대소문자 구분 안 함. String little = "Once when I was six years old I saw a magnificent picture in a book, called True Stories from Nature," + "about the primeval forest. It was a picture of a boa constrictor in the act of swallowing an animal. Here is a" + "copy of the drawing."; System.out.println(little); int sum_a = 0; int sum_space = 0; //1. charAt() 으로 각 문자를 가져온다 //2. 문자열 길이만큼 반복하면서 'a', 'A' 를 만나면 sum_a를 1씩 증가한다. //3. sum_a 출력한다... for (int i = 0; i < little.length(); i++) { if(little.charAt(i) == 'a' || little.charAt(i) =='A') sum_a++; } System.out.print(sum_a); } }
'Coding Class' 카테고리의 다른 글
231012_Java (0) 2023.10.17 231016_HTML과 CSS (0) 2023.10.16 231013_DB 설계와 SQL 활용 (0) 2023.10.13 231012_JAVA (0) 2023.10.12 231010_Java (0) 2023.10.10