BackEnd/Java

[Java]Control 조건문(Loop1)

Hojung7 2024. 7. 21. 14:45

#예제1

1부터 10까지 출력하기

 

[기능]

package loop.ex;

import java.util.Scanner;

public class LoopEx1 {
	
	
	// 필드 (전역 변수 비슷)
	Scanner sc = new Scanner(System.in);
	
	
	/*
	 * 1부터 10까지 출력하기 
	 */
	public void method1() {
		
		// Java는 초기식 변수 선언 시 let X -> Java 자료형
		for(int i = 1  ; i <= 10 ; i++) {
			System.out.println(i);
		}
		
	}

 

[실행]

package loop.run;

import loop.ex.LoopEx1;

public class LoopRun {
	public static void main(String[] args) {
		
		LoopEx1 ex1 = new LoopEx1();
		ex1.method1();

 

#결과

 

#예제2

 첫 번째 입력 받은 수 부터
 두 번째 입력 받은 수 이하 까지
 세 번째 입력 받은 수 만큼 증가하며 출력하기

 

[기능]

	public void method2() {
		System.out.print("시작 끝 증가값 : ");
		int start = sc.nextInt();
		int end = sc.nextInt();
		int value = sc.nextInt();
		
		for(int i = start ; i <= end ; i += value) {
			System.out.println(i);
		}
	}

 

[실행]

package loop.run;

import loop.ex.LoopEx1;

public class LoopRun {
	public static void main(String[] args) {
		
		LoopEx1 ex1 = new LoopEx1();
		ex1.method2();

 

#결과

 

#예제3

 두 수를 입력 받아 작은 수부터 큰 수 이하까지 1씩 증가하며 반복

[기능] 방법 1

public void method3() {
		System.out.println("숫자 2개 입력 : ");
		
		int a = sc.nextInt();
		int b = sc.nextInt();
		
		if(b > a ) {
			for(int i = a ; i < b ; i++) {
			System.out.println(i);
			}
		}else {
			for(int i = b ; i <= a ; i++) {
				System.out.println(i);
		}
}

 

[기능] 방법 2

int start = a;
		int end = b;
		
		if(a > b) { // 시작이 끝 보다 큰 경우
			   start = b;
			   end = a;
		}
		for(int i = start ; i <= end ; i++) {
			System.out.println(i);
		}

 

[기능] 방법 3

// a에 작은 값, b에는 큰 값 저장하게 만들기
// a값을 보관하는 임시 변수
if(a > b) {
		int temp = a;
		a = b;
		b = temp;
		}
		for(int i = a ; i <= b ; i++) {
			System.out.println(i);
		}

 

[기능] 방법 4

int min = Math.min(a, b); // a,b 중 작은 값
		int max = Math.max(a, b); // a,b 중 작은 값
		
		for (int i = min ; i<= max ; i++) {
			System.out.println(i);
		}

 

[실행]

package loop.run;

import loop.ex.LoopEx1;

public class LoopRun {
	public static void main(String[] args) {
		
		LoopEx1 ex1 = new LoopEx1();
		ex1.method3();
    }
}

 

#결과

 

#예제4

1 부터 100 사이의 정수 중 5의 배수의 합, 개수 구하기
( sum, count )

 

[기능]

public void method4() {
		
		int sum = 0; 
		int count = 0;
		for(int i = 1 ; i <= 100 ; i++) {
			if(i % 5 == 0) {
				sum += i; // sum에 i값(5의 배수) 누적
				count ++; // count 1 증가(5의 배수 카운트)
			}
		}
		
		System.out.printf("합계 : %d  / 개수 : %d", sum, count);
}

 

[실행]

package loop.run;

import loop.ex.LoopEx1;

public class LoopRun {
	public static void main(String[] args) {
		
		LoopEx1 ex1 = new LoopEx1();
		ex1.method4();
    }
}

 

#결과

 

#예제5

구구단 3단 출력하기

 

[기능]

public void method5() {
		System.out.println("[3단]");
		
		for(int i = 1 ; i<=9 ; i++) {
			System.out.printf(" 3 X %d = %d \n", i, 3 * i);
		}
	
}

 

[실행]

package loop.run;

import loop.ex.LoopEx1;

public class LoopRun {
	public static void main(String[] args) {
		
		LoopEx1 ex1 = new LoopEx1();
		ex1.method5();
     }
}

 

#결과

 

#예제6

입력 받은 단 출력하기
 단. 입력 받은 단이 2~9 사이 숫자가 아니면
 "잘못 입력 하셨습니다" 출력

 

[기능]

public void method6() {
		System.out.print("단 입력(2~8) : ");
		int dan = sc.nextInt();
		
		if(dan < 2 || dan >9) {
			System.out.println("잘못 입력 하셨습니다.");
			return;
		}
		for (int i = 1; i <= 9; i++) {
			System.out.printf("%d X %d = %d \n", dan, i, (dan*i));
		}
}

 

[실행]

package loop.run;

import loop.ex.LoopEx1;

public class LoopRun {
	public static void main(String[] args) {
		
		LoopEx1 ex1 = new LoopEx1();
		ex1.method6();
     }
}

 

#결과

 

#예제7

for (초기식;조건식;증감식)

 지정된 횟수 만큼 반복

 

while(조건식)

- 조건식이 false가 될 때 까지 반복

- 몇 회인지 모르겠지만 일단 끝날 때까지 반복

While문 기본 작성법

 

[기능]

public void method7() {
	int num = 1;
		
	// while(조건식) -> 조건식이 true인 경우에 반복 수행
	while(num <= 10) {
		System.out.print(num + " ");
		num++;
		}
}

 

[실행]

package loop.run;

import loop.ex.LoopEx1;

public class LoopRun {
	public static void main(String[] args) {
		
		LoopEx1 ex1 = new LoopEx1();
		ex1.method7();
     }
}

 

#결과

 

#예제8

[구구단 출력하기 version.2]
 입력 받은 단 출력하기

단. 입력 받은 단이 2~9 사이 숫자가 아니면
 "잘못 입력 하셨습니다" 출력 후
 다시 단 입력 받기

 

[기능]

public void method8() {
		
	int dan;
		
	while(true) { //무한 반복
			
		System.out.print("단 입력(2~8) : ");
		dan = sc.nextInt();
			
		if(dan >= 2 && dan <=9) {
			break; // 가까운 반복문 정지(분기문)
			
		}
			
			System.out.println("잘못 입력 하셨습니다.");
		}
		
		
		// 구구단 출력
		for (int i = 1; i <= 9; i++) {
			System.out.printf("%d X %d = %d \n", dan, i, (dan*i));
		}
}

 

[실행]

package loop.run;

import loop.ex.LoopEx1;

public class LoopRun {
	public static void main(String[] args) {
		
		LoopEx1 ex1 = new LoopEx1();
		ex1.method8();
     }
}

 

#결과

'BackEnd > Java' 카테고리의 다른 글

[Java]배열(Array)  (0) 2024.07.21
[Java]Control 조건문(Loop2)  (0) 2024.07.21
[Java]Control 조건문(Condition)  (0) 2024.07.21
[Java]Operator  (0) 2024.07.21
[Java]변수 실전예제2  (2) 2024.07.21