1 팁
1. 디버깅 모드
디버깅 곤충버튼 클릭
시작, 끝지점 클릭
F11 : 시작
F6 : 누르면서 확인
JAVA 버튼 누르면 원상 복귀
2 복습
스킵
3 이론
1. loop문
2. loop문
4 실습
1. 무한 반복문 while
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_02_01 {
// 10개의 숫자를 입력받아 합계를 출력하시오.
public static void main(String[] args) {
int i=0;
while(i<10) {
System.out.println("i의 값 : "+i);
}
//
// do {
// System.out.println("i의 값 : "+ i);
// }while(i<0);
//
// System.out.println("프로그램을 종료합니다.");
}
}
2. do while문 반복
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_02_01 {
// 10개의 숫자를 입력받아 합계를 출력하시오.
public static void main(String[] args) {
int i = 0;
// while(i<10) {
// System.out.println("i의 값 : "+i);
//
// }
do {
System.out.println("i의 값 : " + i);
i++;
} while (i < 10);
System.out.println("프로그램을 종료합니다.");
}
}
3. 나머지 무한 반복들 _ for(;;) & while(true)
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_02_01 {
// 10개의 숫자를 입력받아 합계를 출력하시오.
public static void main(String[] args) {
int i = 0;
// while(i<10) {
// System.out.println("i의 값 : "+i);
//
// }
do {
System.out.println("i의 값 : " + i);
i++;
} while (i < 10);
System.out.println("프로그램을 종료합니다.");
}
}
//무한반복
//for(;;) {
// System.out.println("숫자를 입력하세요.");
// int num = scan.nextInt();
// if(num==0) {
// System.out.println("프로그램을 종료합니다.");
// break;
// }
//}
//무한반복
//while(true) {
// System.out.println("숫자를 입력하세요.");
// int num = scan.nextInt();
// if(num==0) {
// //프로그램을 종료
// break; //반복문을 종료는 break
// }
//}
//int i=10;
////while(i<0) {
//// System.out.println("i의 값 : "+i);
////}
//
//do {
// System.out.println("i의 값 : "+ i);
//}while(i<0);
//
//System.out.println("프로그램을 종료합니다.");
4. if-switch-while 사칙연산 프로그램
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_02 {
// 10개의 숫자를 입력받아 합계를 출력하시오.
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
// 실습 4 - 사칙연산
char ch = ' ';
int input = 0, num1 = 0, num2 = 0;
while (true) {
System.out.println("[사칙연산 프로그램]");
System.out.println("1. 더하기 ");
System.out.println("2. 빼기 ");
System.out.println("3. 곱하기 ");
System.out.println("4. 나누기 ");
System.out.println("0. 종료");
System.out.println("원하는 번호를 입력하세요");
input = scan.nextInt(); // 원하는 번호 입력 받음.
if (input == 0) {
System.out.println("종료합니다.");
break;
}
// if break; 도 가능함
// 숫자를 입력
System.out.println("첫번째 숫자를 입력하세요");
num1 = scan.nextInt();
System.out.println("두번째 숫자를 입력하세요");
num2 = scan.nextInt();
switch (input) {
case 1:
System.out.println(num1 + "+" + num2 + "=" + (num1 + num2));
break;
case 2:
System.out.println(num1 + "-" + num2 + "=" + (num1 - num2));
break;
case 3:
System.out.println(num1 + "*" + num2 + "=" + (num1 * num2));
break;
case 4:
System.out.println(num1 + "/" + num2 + "=" + (num1 / num2));
break;
}
// 무한반복
// while(true) {
// System.out.println("프로그램실행");
// }
// int i=10;
// while(i<0) {
// System.out.println("i의 값: "+i);
// }
}
}
}
5. 특정 조건까지 반복 : if & while & break;
package j0511;
public class C0511_03 {
public static void main(String[] args) {
// 실습 1
int i = 0, sum = 0;
while (true) {
if (sum > 100) {
break; // while,for문 종료할 때 : break문
}
sum = sum + i; // i=0, sum = 0, i=1, sum=1
i++;
System.out.println("sum 값 : " + sum + "\n" + "i 값 : " + i);
System.out.println("if문 실행중");
}
System.out.println("if문 나왔음");
System.out.println("sum 값 : " + sum + "\n" + "i 값 : " + i);
}
}
////실습 2
//int i=0, sum=0;
//
//for (i = 0;;) {
//if (sum>10) {
// break;
//}
//i++;
//sum+=i;
//}
//System.out.println("i의 결과값 :"+(i));
//System.out.println("sum의 결과값 :"+sum);
6. ;; 무한 반복 & break 활용
package j0511;
public class C0511_03 {
public static void main(String[] args) {
// 실습 2
int i=0, sum=0;
for (i = 0;;) {
if (sum>10) {
break;
}
i++;
sum+=i;
}
System.out.println("i의 결과값 :"+(i));
System.out.println("sum의 결과값 :"+sum);
}
}
//// 실습 1
//int i = 0, sum = 0;
//while (true) {
// if (sum>100) {
// break; // while,for문 종료할 때 : break문
// }
// sum = sum+i; //i=0, sum = 0, i=1, sum=1
// i++;
// System.out.println("sum 값 : "+sum+"\n"+"i 값 : "+i);
// System.out.println("if문 실행중");
//}
//System.out.println("if문 나왔음");
//System.out.println("sum 값 : "+sum+"\n"+"i 값 : "+i);
7. continue _ for&if 조건 1
package j0511;
import java.util.Iterator;
public class C0511_04 {
public static void main(String[] args) {
// 실습3
for (int i = 0; i <= 10; i++) {
if (i%2==1) {
continue;
}
System.out.println(i);
}
}
}
8. continue _ for&if 조건 2 스킵
package j0511;
import java.util.Iterator;
public class C0511_04 {
public static void main(String[] args) {
// 실습3
for (int i = 0; i <= 10; i++) {
// if (i%2==1) { //1
if (i==5) { //2
continue;
}
System.out.println(i);
}
}
}
9. loop:for문
package j0511;
import java.util.Iterator;
public class C0511_05 {
public static void main(String[] args) {
//실습1
loop:for (int i = 2; i < 10; i++) {
for (int j = 1; j < 10; j++) {
if(j==6) break loop;
System.out.printf("%d*%d=%d\n",i,j,(i*j));
} // for문 바로 빠져오기
System.out.println();
}
}
}
// 살짝 어려움
// loop:for 중첩 반복문에서 바깥쪽 반복문까지 한번에 빠져나오기
// 가장 바깥쪽 길을 지정하는 것과 같음
// j가 6일 때 바로 빠져나옴
10. while문 & switch문 & break문 & loop문
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_05 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int input = 0, num1 = 0, num2 = 0, sum = 0;
while (true) { // 무한반복
System.out.println("1. 더하기");
System.out.println("2. 곱하기");
System.out.println("0. 종료");
System.out.println("----------");
System.out.println("원하는 번호를 입력하세요.");
input = scan.nextInt();
if (input == 0) {
System.out.println();
break;
} // 프로그램 종료
switch (input) {
case 1:
loop:while (true) {
System.out.println("1번 숫자 입력하세요. (0.이전 페이지, 1:종료)");
num1 = scan.nextInt();
if(num1==0) break; // 바로 이전 페이지
if(num1==1) break loop; // 바로 종료
System.out.println("2번 숫자 입력하세요");
num2 = scan.nextInt();
// System.out.println(num1+"+"+num2+"="+(num1+num2));
System.out.printf("%d+%d=%d \n", num1, +num2, (num1 + num2));
break;
} // while문
}// switch문
// loop:break;
} // while문 메뉴
}
}
11. 배열 1
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_07 {
public static void main(String[] args) {
int[] num;
num = new int[5];
int[] score = new int [5];
System.out.println(num);
}
}
12. 배열 2 (0~5까지)
package j0511;
import java.util.Iterator;
public class C0511_08 {
public static void main(String[] args) {
// 2.실습
// int 배열
int[] num = new int[5];
for (int i = 0; i < num.length; i++) {
num[i] = i+1;
System.out.println(i+":"+(i+1));
}
for (int i = 0; i < num.length; i++) { //num의 배열의 크기 만큼
System.out.println(num[i]);
}
}
}
12. 배열 3 (0~100까지)
package j0511;
import java.util.Iterator;
public class C0511_08 {
public static void main(String[] args) {
// 2.실습
// int 배열
int[] num = new int[100];
for (int i = 0; i < num.length; i++) {
num[i] = i + 1;
System.out.println(i + ":" + (i + 1));
}
for (int i = 0; i < num.length; i++) { // num의 배열의 크기 만큼
System.out.println(num[i]);
}
}
}
13. 배열 4 연습 (그냥 넘겨도 됨)
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_09 {
public static void main(String[] args) {
// 랜덤숫자맞추기 (값 입력 받아)
// 10번 기회를 주어지고 정답 확인 시 입력한 번호를 출력
int input = 0; // 입력받은 변수
int random = 0; // 랜덤 변수
int count = 0; // 도전 횟수
Scanner scan = new Scanner(System.in);
while (true) {
System.out.println("1. 랜덤 숫자 생성");
System.out.println("2. 시작하기");
System.out.println("3. 종료");
System.out.println("번호를 입력 하세요");
input = scan.nextInt();
if (input == 3) {
System.out.println("종료합니다.");
break;
}
switch (input) {
case 1:
System.out.println("랜덤 숫자 생성이 되었습니다.");
break;
case 2:
System.out.println("랜덤 숫자를 맞추세요");
input = scan.nextInt();
if (input == 0) {
}
break;
}
}
}
}
14. 배열 5 적용 전 - 학생 성적 자동 입력 (배열 이용 안할 경우)
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_10 {
public static void main(String[] args) {
// 성적처리 프로그램
// 1.이름 2.국어. 3.영어. 4.수학 합계, 평균 자동으로 들어갈 수 있도록 함
String name = "";
int kor = 0;
int eng = 0;
int math = 0;
int total = 0;
double avg = 0;
int[] range = new int[3];
Scanner scan = new Scanner(System.in);
while (true) {
System.out.println("이름을 입력하세요");
name = scan.nextLine();
System.out.println("국어 성적을 입력하세요");
kor = scan.nextInt();
System.out.println("영어 성적을 입력하세요");
eng = scan.nextInt();
System.out.println("수학 성적을 입력하세요");
math = scan.nextInt();
// 자동계산
total = kor + eng + math;
avg = total / 3.0;
// 출력
System.out.printf("이름\t국어\t영어\t수학\t합계\t평균 \n");
System.out.println("---------------------------");
System.out.printf("%s\t%d\t%d\t%d\t%d\t%.2f \n", name, kor, eng, math, total, avg);
}
}
}
15. 배열 5 적용 후 - 학생 성적 자동 입력 (배열 이용 할 경우) // 이름,국영수만
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_10 {
public static void main(String[] args) {
// 성적처리 프로그램
// 1.이름 2.국어. 3.영어. 4.수학 합계, 평균 자동으로 들어갈 수 있도록 함
String[] name = new String[3];
int[] kor = new int[3];
int[] eng = new int[3];
int[] math = new int[3];
int[] total = new int[3];
double[] avg = new double[3];
int[] range1 = new int[3];
Scanner scan = new Scanner(System.in);
for (int i = 0; i < name.length; i++) {
System.out.println("이름 입력하세요");
name[i] = scan.next();
System.out.println("국어점수 입력하세요");
kor[i] = scan.nextInt();
System.out.println("영어점수 입력하세요");
eng[i] = scan.nextInt();
System.out.println("수학점수 입력하세요");
math[i] = scan.nextInt();
}
for (int i = 0; i < name.length; i++) {
// 출력
System.out.println("이름 \t 국어 \t영어 \t수학");
System.out.println("------------------------------------------------------------------");
System.out.printf("%s \t %d \t %d \t %d \t \n", name[0],kor[0],eng[0],math[0]);
// ,total[0],avg[0]
}
}
}
16. 배열 5 적용 후 - 학생 성적 자동 입력 (배열 이용 할 경우) // 이름,국영수만
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_10 {
public static void main(String[] args) {
// 성적처리 프로그램
// 1.이름 2.국어. 3.영어. 4.수학 합계, 평균 자동으로 들어갈 수 있도록 함
String[] name = new String[3];
int[] kor = new int[3];
int[] eng = new int[3];
int[] math = new int[3];
int[] total = new int[3];
double[] avg = new double[3];
int[] range1 = new int[3];
Scanner scan = new Scanner(System.in);
for (int i = 0; i < name.length; i++) {
System.out.println("이름 입력하세요");
name[i] = scan.next();
System.out.println("국어점수 입력하세요");
kor[i] = scan.nextInt();
System.out.println("영어점수 입력하세요");
eng[i] = scan.nextInt();
System.out.println("수학점수 입력하세요");
math[i] = scan.nextInt();
total[i] = kor[i] + eng[i] + math[i];
avg[i] = total[i] / 3.0;
}
for (int i = 0; i < name.length; i++) {
// 출력
System.out.println("이름 \t 국어 \t영어 \t수학 \t합계 \t평균");
System.out.println("------------------------------------------------------------------");
System.out.printf("%s \t %d \t %d \t %d \t %d \t %.2f \n", name[0], kor[0], eng[0], math[0], total[0],
avg[0]);
// ,total[0],avg[0]
}
}
}
// while (true) {
//
// System.out.println("이름을 입력하세요");
// name = scan.nextLine();
//
// System.out.println("국어 성적을 입력하세요");
// kor = scan.nextInt();
//
// System.out.println("영어 성적을 입력하세요");
// eng = scan.nextInt();
//
// System.out.println("수학 성적을 입력하세요");
// math = scan.nextInt();
//
// // 자동계산
// total = kor + eng + math;
// avg = total / 3.0;
// 출력
// System.out.printf("이름\t국어\t영어\t수학\t합계\t평균 \n");
// System.out.println("---------------------------");
// System.out.printf("%s\t%d\t%d\t%d\t%d\t%.2f \n", name, kor, eng, math, total, avg);
//
17. 배열 6 - 배열의 주소를 따라간다.
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_12 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = 5;
int num2 = num;
num2 = 10;
System.out.println(num);
System.out.println(num2);
System.out.println("--------------");
int[] input = new int[3];
input[0] = 5;
//주소 값 복사
int[] input2 = input;
System.out.println(input2[0]);
input2[0] = 20;
System.out.println(input2[0]);
System.out.println(input[0]); //주소값을 저장
}
}
17. 배열 6 - 배열의 주소를 따라간다.2
package j0511;
public class C0511_13 {
public static void main(String[] args) {
int a = 10;
int b = 20;
int c = 0;
// a와 b의 값을 서로 바꿔서 저장을 하시오.
c = a;
a = b;
b = c;
}
}
5 문제풀이
1. 구구단 만들기 - 가로 정렬
package j0511;
import java.util.Iterator;
public class C0511_01 {
// 10개의 숫자를 입력받아 합계를 출력하시오.
public static void main(String[] args) {
// 문제 1 구구단
for (int i = 1; i < 10; i++) {
System.out.printf("\n [%d단] \n",i);
for (int j = 1; j < 10; j++) {
System.out.print(i+"*"+j+"="+(i*j)+" ");
}
System.out.println("\n");
}
// // 문제 2 구구단을 출력하시오. 가로 세로 정렬해서
// for(int i=2;i<=9;i++) {
// System.out.printf("[%d단]\t",i);
// }
// System.out.println();
// for(int i=1;i<=9;i++) {
// for(int j=2;j<=9;j++) {
// System.out.printf("%d*%d=%d\t",j,i,i*j);
// }
// System.out.println();
// }
}
}
2. 구구단 만들기 - 가로 세로 정렬
package j0511;
import java.util.Iterator;
public class C0511_01 {
// 10개의 숫자를 입력받아 합계를 출력하시오.
public static void main(String[] args) {
//// 문제 1 구구단
// for (int i = 1; i < 10; i++) {
// System.out.printf("\n [%d단] \n",i);
// for (int j = 1; j < 10; j++) {
// System.out.print(i+"*"+j+"="+(i*j)+" ");
// }
// System.out.println("\n");
// }
// 문제 2 구구단을 출력하시오. 가로 세로 정렬해서
for(int i=2;i<=9;i++) {
System.out.printf("[%d단]\t",i);
}
System.out.println();
for(int i=1;i<=9;i++) {
for(int j=2;j<=9;j++) {
System.out.printf("%d*%d=%d\t",j,i,i*j);
}
System.out.println();
}
}
}
3. 구구단 만들기 - 가로 세로 정렬 - for,if // continue 사용
package j0511;
import java.util.Iterator;
public class C0511_04 {
public static void main(String[] args) {
// 문제 1. 5단만 빼고 출력
// for (int i = 1; i < 10; i++) {
for (int i = 2; i < 10; i++) {
if (i % 2 != 0)
continue;
for (int j = 1; j < 10; j++) {
// if (j != 5) // 문제1 5단만 빼고 출력
if (j % 2 == 0) // 문제2 짝수단만 출력
continue;
// System.out.println(i + "*" + j + "=" + (i*j)+"\t");
System.out.printf("%d*%d=%d\t", i, j, (i * j));
}
System.out.println();
}
}
}
////실습 2
//int i=0, sum=0;
//
//for (i = 0;;) {
//if (sum>10) {
// break;
//}
//i++;
//sum+=i;
//}
//System.out.println("i의 결과값 :"+(i));
//System.out.println("sum의 결과값 :"+sum);
//// 실습3
//for (int i = 0; i <= 10; i++) {
//// if (i%2==1) { //1
// if (i==5) { //2
// continue;
// }
// System.out.println(i);
//}
4. 랜덤 숫자 맞추기 프로그램
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_06 {
public static void main(String[] args) {
// 숫자맞추기 프로그램
// 랜덤숫자를 만들어서 출력하세요
// 1부터 100까지의 있는 숫자 번호를 생성
int input = 0, random = 0, n1 = 0, n2 = 0;
Scanner scan = new Scanner(System.in);
while (true) {
System.out.println("[숫자맞추기 프로그램]");
System.out.println("1. 랜덤숫자 생성");
System.out.println("2. 숫자맞추기 게임");
System.out.println("3. 종료");
System.out.println("----------------");
System.out.println("원하는 번호를 입력하세요");
input = scan.nextInt();
if (input == 3) {
System.out.println("종료합니다.");
break;
}
switch (input) {
case 1:
random = (int) (Math.random() * 100) + 1;
System.out.println("랜덤숫자 : " + random);
System.out.println("랜덤숫자가 생성 되었습니다!");
break;
case 2:
System.out.println("숫자 1~100까지 입력하세요");
input = scan.nextInt();
if (input == random) {
System.out.println("정답입니다.");
break;
} else if (input != random) {
System.out.println("오답입니다.");
break;
} else {
System.out.println("이상합니다.");
break;
}
}
}
}
}
5. 랜덤 숫자 맞추기 프로그램 2
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_06 {
public static void main(String[] args) {
// 숫자맞추기 프로그램
// 랜덤숫자를 만들어서 출력하세요
// 1부터 100까지의 있는 숫자 번호를 생성
int input = 0, random = 0, count = 0;
Scanner scan = new Scanner(System.in);
while (true) {
System.out.println("[숫자맞추기 프로그램]");
System.out.println("1. 랜덤숫자 생성");
System.out.println("2. 숫자맞추기 게임");
System.out.println("3. 종료");
System.out.println("----------------");
System.out.println("원하는 번호를 입력하세요");
input = scan.nextInt();
if (input == 3) {
System.out.println("종료합니다.");
break;
}
switch (input) {
case 1:
random = (int) (Math.random() * 100) + 1;
System.out.println("랜덤숫자 : " + random);
System.out.println("랜덤숫자가 생성 되었습니다!");
break;
case 2:
while (true) {
count++;
if (count > 3) {
System.out.println("3번 도전했습니다.");
System.out.println("정답 : " + random);
break;
} // if문 마지막
System.out.printf("숫자 1~100까지 입력하세요 (%d번째 도전) : ", count);
input = scan.nextInt();
if (input == random) {
System.out.println("정답입니다.");
break;
} else if (input != random) {
System.out.println("오답입니다.");
} else {
System.out.println("이상합니다.");
} // else 마지막
if (count == 3) {
System.out.println("3번의 기회가 모두 소진되었습니다.");
System.out.println("정답은 " + random + "입니다.");
break;
} // if문 마지막
} // for문 마지막
break;
} // case while문
} // while문 마지막
}
}
6. 배열 문제 2
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_07 {
public static void main(String[] args) {
// 1 실습
// 1. 배열 생성
int sum = 0;
int[] num;
num = new int[5];
// int[] score = new int[5];
String[] name = new String[100];
double[] avg = new double[50];
// 2. 값 넣기
int[] score = new int[10];
// score[0] = 1;
// score[1] = 2;
// score[2] = 3;
for (int i = 0; i < score.length; i++) {
score[i] = i + 1;
System.out.println((i) + ":" + (i + 1)); // 알고리즘 찾기
}
// score 1부터~10까지 출력
System.out.println(num);
System.out.println(score[1]);
}
}
7. 배열 문제 3
package j0511;
import java.util.Iterator;
public class C0511_08 {
public static void main(String[] args) {
// 문제 1
// 10개 배열 생성 후 랜덤숫자 1-10까지 숫자 입력해서 출력
int[] num = new int[10]; // 저장할 수 있는 공간
for (int i = 0; i < num.length; i++) {
num[i] = (int) (Math.random() * 10) + 1;
System.out.println(num[i]);
}
}
}
8. 배열 문제 4 - 랜덤 숫자 맞추기 [10번의 기회] - 배열 사용해서
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_09_ex {
public static void main(String[] args) {
// 랜덤숫자맞추기 (값 입력 받아)
// 10번 기회를 주어지고 정답 확인 시 입력한 번호를 출력
int input = 0; // 입력받은 변수
int random = 0; // 랜덤 변수
int count = 0; // 도전 횟수
int[] num = new int[10];
Scanner scan = new Scanner(System.in);
random = (int) (Math.random() * 100) + 1;
System.out.println("랜덤 숫자 : " + random);
// int i = 0;
while (true) {
// 10번 도전시
if (count >= 10) {
System.out.println("10번 도전했습니다. 프로그램 종료합니다.");
break;
}
// 도전번호 입력
System.out.println((count + 1) + "번째 숫자를 입력하세요");
num[count] = scan.nextInt();
if (num[count] == random) {
System.out.println("정답입니다");
break;
} else {
System.out.println("오답입니다. 다시 도전하세요");
}
count++;
}//while문 마지막
// 입력한 숫자 출력
System.out.println("정답 : " + random);
System.out.print("입력한 숫자 : ");
for (int i = 0; i < num.length; i++) {
System.out.print(num[i]);
if (i != num.length - 1) {
System.out.print(",");
}
}//for문 마지막
}
}
9. 배열 문제 끝판왕 - case&switch&while 등등
package j0511;
import java.util.Iterator;
import java.util.Scanner;
public class C0511_11 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int[] num = new int[0];
int n1 = 0, count = 0, input = 0; // 번호 선택, 입력된 학생 수
String[] name = new String[0];
int[] kor = new int[0];
int[] eng = new int[0];
int[] math = new int[0];
int[] total = new int[0];
double[] avg = new double[0];
// 1.성적입력
// 2.성적출력
// 3.성적수정
// 4.등수처리
// 0.프로그램 종료
while (true) {
System.out.println("성적처리 프로그램");
System.out.println("1.성적입력");
System.out.println("2.성적출력");
System.out.println("3.성적수정");
System.out.println("4.등수처리");
System.out.println("0.프로그램 종료");
System.out.println("\n 번호를 입력하세요");
input = scan.nextInt();
// 종료 버튼
if (input == 0) {
System.out.println("종료합니다.");
break;
}
switch (input) {
// 1. 성적 입력
case 1:
for (int i = count; i < name.length; i++) { // count 왜 들어가지?
System.out.println("이름을 입력하세요. (0.이전페이지이동)");
name[i] = scan.next();
// 0번 입력시 이전 페이지로
if (name[i].equals("0")) {
System.out.println("돌아갑니다.");
System.out.println();
break;
}
// 그 외 바로 성적 입력
System.out.println("국어 성적 입력");
kor[i] = scan.nextInt();
System.out.println("영어 성적 입력");
eng[i] = scan.nextInt();
System.out.println("수학 성적 입력");
math[i] = scan.nextInt();
// 자동계산
total[i] = kor[i] + eng[i] + math[i];
avg[i] = total[i] / 3.0;
count++; // 이것도 왜 있지?
} // for
break; // switch
// 2. 성적 출력
case 2:
System.out.println("성적을 출력합니다.");
System.out.println("이름 \t 국어 \t영어 \t수학 \t합계 \t평균");
System.out.println("------------------------------------------------------------------");
for (int i = 0; i < num.length; i++) {
System.out.printf("%s \t %d \t %d \t %d \t %d \t %.2f \n", name[0], kor[0], eng[0], math[0], total[0],
avg[0]);
}
break;
// 3. 성적 수정
case 3:
System.out.println("뭐냐");
// 4. 등수 처리
case 4:
System.out.println("뭐냐");
} // switch
} // while
}
}
* 핵심
- scanner 활용법
- loop 활용법
- continue, break 활용법
- 배열은 무조건 for문을 이용한다 !
- for, while, do-while문
* 0511 실습 링크
'배운 책들 정리 > 자바 완전 정복' 카테고리의 다른 글
자바의 정석 5,6 - 배열, 객체 (수정중) (0) | 2023.05.17 |
---|---|
자바의 정석 4,5 - 조건문,반복문,배열 2 (1) | 2023.05.13 |
자바의 정석 3,4 - 연산자, 조건문 (1) | 2023.05.10 |
자바의 정석 3 - 연산자 (scanner, charat, next, 삼항연산자) 등등 (0) | 2023.05.09 |
자바의 정석 1,2 - 자바 설치~변수의 종류~형 변환 (0) | 2023.05.08 |