Chapter 04. 제어문(3)
26448 단어 TILKDCJAVA_SPRING_WEBJAVA_SPRING_WEB
수강 날짜 21-07-31
강의명 : 07 for문, 중첩 반복문-2
강의명 : 08 break문, continue문
강의명 : 09 코딩해 보세요
for문, 중첩 반복문-2
각 반복문의 쓰임
for문에서 초기화식, 조건식, 증감식은 생략이 가능합니다.
for(;;)
이렇게 표현이 가능하다.
중첩 반복문
반복문이 중첩되어 구현되는 경우
반복문 내부에 또 다른 반복문이 있음
외부 반복문과 내부 반복문 간의 변수 값 면화에 유의 하며 구현해야 함
for를 이용한 반복문 문제
구구단을 구현하라
public class NestedLoop {
public static void main(String[] args) {
int dan;
int count;
for(dan = 2; dan <= 9; dan++) {
for(count = 1; count <= 9; count++) {
System.out.println(dan + " X " + count + " = " + dan * count);
}System.out.println();
}
}
}
break문, continue문
break문
감싸고 있는 블록의 제어를 빠져오는 기능
반복문, 조건문, switch-case등과 같이 쓰이며 현재 수행하고 있던 블록에서 수행을 중지하고 외부로 제어가 이동함
반복문과 같이 사용하면 특정 조건일 때 반복을 중지 하는 기능을 구현할 수 있음
continue문
반복의 수행 중 조건문과 조건이 맞는 경우 이후 블록 내부의 다른 수행문을 수행하지 않음
break 예제
public class BreakExample {
public static void main(String[] args) {
int sum = 0;
int num = 0;
for(num = 1; ; num++) {
sum += num;
if(sum >= 100)
break;
}
System.out.println(sum);
System.out.println(num);
}
}
continue 예제
1씩 증가시키는 수가 3의 배수일때만 출력하라!
public class ContinueExample {
public static void main(String[] args) {
int num;
for( num = 1; num <= 100; num++) {
if(num%3!=0) continue;
System.out.println(num);
}
}
}
break, continue문제
구구단을 출력할 때 짝수 단만 출력하면서 단보다 곱하는 수가 작거나 같을 때까지만 출력하게요.
public class BreakContinueTest {
public static void main(String[] args) {
int dan;
int count;
for(dan = 2; dan <=9; dan++) {
if(dan %2 != 0) continue;
for(count = 1; count <= 9; count++) {
System.out.println(dan + "X" + count + "=" + dan*count);
if(count >= dan) break;
}
System.out.println();
}
}
}
코딩해 보세요
코딩도 수학 처럼 문제를 쭉 풀어봐야 한다.
수업에서 문제를 Github으로 코드를 주었다. 그것을 해결하라
문제 1 해답:
public class Q1 {
public static void main(String[] args) {
char operator = '+';
int num1 = 10;
int num2 = 5;
if(operator == '+') {
System.out.println("결과값은 " + (num1 + num2));
}
else if(operator == '-') {
System.out.println("결과값은 " + (num1 - num2));
}
else if(operator == '*') {
System.out.println("결과값은 " + (num1 * num2));
}
else if(operator == '/') {
System.out.println("결과값은 " + (num1 / num2));
}
else {
System.out.println("사칙 연산이 아닙니다.");
}
switch(operator) {
case '+':
System.out.println("결과값은 " + (num1 + num2));
break;
case '-':
System.out.println("결과값은 " + (num1 - num2));
break;
case '*':
System.out.println("결과값은 " + (num1 * num2));
break;
case '/':
System.out.println("결과값은 " + (num1 / num2));
break;
default:
System.out.println("사칙 연산이 아닙니다.");
}
}
}
문제 2 해답:
public class Q2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("홀수 값을 입력하세요:");
int linecount = sc.nextInt();
int spacecount = linecount/2 + 1;
int starcount = 1;
for(int i=0; i<linecount; i++) {
for(int j=0; j<spacecount; j++) {
System.out.print(" ");
}
for(int j=0; j<starcount; j++) {
System.out.print("*");
}
System.out.println();
if(i<linecount/2) {
spacecount-=1;
starcount+=2;
}
else {
spacecount+=1;
starcount-=2;
}
}
}
}
Author And Source
이 문제에 관하여(Chapter 04. 제어문(3)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@fe26ming/Chapter-04.-제어문3저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)