[JAVA] ๋ฐ˜๋ณต๋ฌธ

2021. 2. 7. 08:00ใ†๊ฐœ๋… ์ •๋ฆฌ ์ž‘์—…์‹ค/Java

728x90
๋ฐ˜์‘ํ˜•

๐Ÿ“Œ ๋ฐ˜๋ณต๋ฌธ

    ๐Ÿ“ while

๋”๋ณด๊ธฐ

while๋ฌธ์˜ ํ˜•์‹์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

while(์กฐ๊ฑด) {
	๋ฐ˜๋ณต ์‹คํ–‰ ์˜์—ญ
}
๋”๋ณด๊ธฐ

While๋ฌธ์—์„œ ์ฃผ์˜ํ•  ์ ์€ ์กฐ๊ฑด์— ๋“ค์–ด๊ฐˆ ํ˜•์‹์ด Boolean Type์ด์—ฌ์•ผ ํ•œ๋‹ค๋Š” ์ ์ด์—์š”.


์ฆ‰, ์ฐธ์ด๋ผ๋ฉด? ๊ฑฐ์ง“์ด๋ผ๋ฉด? ๋ฐ˜๋ณต์„ ์‹คํ–‰ํ•ด!๋กœ ์ดํ•ด ํ•˜์‹œ๋ฉด ๋˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

           ๐Ÿ’ก ์˜ˆ์‹œ ์ฝ”๋“œ

public class LoopExample1 {

	public static void main(String[] args) {
		// while ๋ฌธ ์˜ˆ
		int i = 0;	// ๋ณ€์ˆ˜ i๋ฅผ 0์œผ๋กœ ์ดˆ๊ธฐํ™”
		while (i < 10) {	// i๊ฐ€ 10๋ณด๋‹ค ์ž‘๋‹ค๋ฉด? While์˜ {}์•ˆ์— ๋‚ด์šฉ ์‹คํ–‰.
			System.out.print(i + " "); // i ๋ณ€์ˆ˜์•ˆ์— ๋ณ€์ˆ˜๊ฐ’์„ ์ถœ๋ ฅํ•˜๊ณ , ๊ณต๋ฐฑ ์ถœ๋ ฅํ•˜๋ฉด์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ถœ๋ ฅ(print)
			i ++; // i๋ฅผ 1์”ฉ ์ฆ๊ฐ€
		}
	}

}
๋”๋ณด๊ธฐ

 

          ๐Ÿ‘‰While๋ฌธ์˜ ์ฃผ์˜์‚ฌํ•ญ

While๋ฌธ์€ ๊ฐœ์ˆ˜ ํ˜น์€ ํšŸ์ˆ˜ ๋ฐ˜๋ณต์„ ํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๊ฐœ์ˆ˜๋‚˜ ํšŸ์ˆ˜๊ฐ€ ์ •ํ•ด์ ธ ์žˆ์„ ๋•Œ ์‚ฌ์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

 

    ๐Ÿ“ do - while

๋”๋ณด๊ธฐ

          ๐Ÿ‘‰do-while๋ฌธ์˜ ์ฃผ์˜์‚ฌํ•ญ

do-while๋ฌธ์€ ์กฐ๊ฑด์€ ๋‚˜์ค‘์— ์ฐธ๊ณ ํ•˜๊ณ , ์ผ๋‹จ ์‹คํ–‰์„ ํ•œ๋ฒˆ ๊ผญ ํ•˜๊ฒŒ ๋˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

do {} ์•ˆ์— ์˜ค๋Š” ๋‚ด์šฉ์€ ์กฐ๊ฑด์— ๋“ค์–ด๊ฐ€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

do-while์˜ ์žฅ์ ์€ ๊ฐ™์€ ๋ฐ˜๋ณต๋ฌธ๋ณด๋‹ค ์ค‘๋ณต ๋ถ€๋ถ„์ด ๋œํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋˜‘๊ฐ™์€ ์ฝ”๋“œ๊ฐ€ ์—ฌ๋Ÿฌ๋ฒˆ ๋‚˜์—ด๋  ๋•Œ ์ด๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

do-while์€ ์‹คํ–‰ ๋’ค ๊ฒ€์‚ฌ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

์ฆ‰, do-while๋ฌธ์€ ๋จผ์ € ๋ฃจํ”„๋ฅผ ํ•œ๋ฒˆ ์‹คํ–‰ํ•œ ๋’ค์— ์กฐ๊ฑด์‹์„ ๊ฒ€์‚ฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฐธ๊ณผ ๊ฑฐ์ง“ ์—ฌ๋ถ€๋ฅผ ๋– ๋‚˜ ๋ฌด์กฐ๊ฑด ํ•œ๋ฒˆ์€ ์‹คํ–‰ํ•œ๋‹ค๋Š” ๊ฒƒ์ด์ง€์š”

 

do-while์˜ ํ˜•์‹์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

int key;	// key๋ผ๋Š” ์ •์ˆ˜ํ˜• ๋ณ€์ˆ˜ ์„ ์–ธ.

do {
	์กฐ๊ฑด์— ๋“ค์–ด๊ฐ€๊ธฐ ์ „ ๊ผญ ํ•œ๋ฒˆ์€ ์‹คํ–‰ํ•ด์•ผ ๋  ๋‚ด์šฉ ์ž…๋ ฅ
} while (์กฐ๊ฑด๋ฌธ);
	๋ฐ˜๋ณตํ•  ๋‚ด์šฉ
๋”๋ณด๊ธฐ

 

           ๐Ÿ’ก ์˜ˆ์‹œ ์ฝ”๋“œ


import java.util.Scanner;

public class CheckInput {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner input = new Scanner(System.in);
		int month;
		
		do {
			System.out.println("์˜ฌ๋ฐ”๋ฅธ ๋‹ฌ์„ ์ž…๋ ฅํ•˜์„ธ์š” [ 1 ~ 12 ]: ");  // ์กฐ๊ฑด์ ˆ์„ ๊ฒ€์‚ฌํ•˜๊ธฐ ์ „ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋‹ฌ์˜ ์ˆ˜๋ฅผ ์ž…๋ ฅ ๋ฐ›๋Š”๋‹ค.
			month = input.nextInt();	// ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋‹ฌ์˜ ์ˆ˜๋ฅผ month๋ณ€์ˆ˜์— ๋„ฃ๋Š”๋‹ค.
		} while (month < 1 || month > 12);	// month ๋ณ€์ˆ˜๊ฐ€ 1๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜, 12๋ณด๋‹ค ํฌ๋‹ค๋ฉด while๋ฌธ์˜ {}์˜ ๋‚ด์šฉ ํ•œ๋ฒˆ ์‹คํ–‰ํ•˜๊ณ  ์ข…๋ฃŒ
		System.out.println("์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋‹ฌ์€ " + month);
	}

}

 

 

๋”๋ณด๊ธฐ

 

    ๐Ÿ“ for๋ฌธ

          ๐Ÿ‘‰do-while๋ฌธ์˜ ์ฃผ์˜์‚ฌํ•ญ

for๋ฌธ ์—ญ์‹œ while๋ฌธ๊ณผ ๋น„์Šทํ•˜๊ฒŒ ๊ฐœ์ˆ˜์™€ ํšŸ์ˆ˜๋ฅผ ๋ฐ˜๋ณต ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ , ๊ฐœ์ˆ˜๊ฐ€ ์ •ํ•ด์ ธ ์žˆ์„ ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

for๋ฌธ์˜ ์˜ˆ์‹œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

/*
* ์ดˆ๊ธฐ์‹: ์–ด๋””์„œ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ฒ ๋‹ค. (์ƒ๋žต๊ฐ€๋Šฅ)
* ์กฐ๊ฑด์‹: ์–ด๋””๊นŒ์ง€ ํ˜น์€ ~์ด๋ผ๋ฉด (์ƒ๋žต๊ฐ€๋Šฅ)
* ์ฆ๊ฐ์‹: ์ดˆ๊ธฐ์‹์—์„œ ์„ ์–ธ๋œ ๋ณ€์ˆ˜์˜ ๊ฐ’์ด ์ฆ๊ฐ€ ํ˜น์€ ๊ฐ์†Œ ์‹œํ‚ค๋ฉด์„œ ๋ฐ˜๋ณต๋ฌธ ์ง„ํ–‰ (์ƒ๋žต ๊ฐ€๋Šฅ)
*/

for(<์ดˆ๊ธฐ์‹>; <์กฐ๊ฑด์‹>; <์ฆ๊ฐ์‹>) {
	๋ฐ˜๋ณตํ•  ๋‚ด์šฉ
}
๋”๋ณด๊ธฐ

 

           ๐Ÿ’ก ์˜ˆ์‹œ ์ฝ”๋“œ

//ํŒฉํ† ๋ฆฌ์–ผ์„ ๊ตฌํ•˜๋Š” ์˜ˆ์‹œ๋กœ for๋ฌธ์„ ์•Œ์•„ ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.
//ํŒฉํ† ๋ฆฌ์–ผ n!์ด๋ผ๋Š” ๊ฒƒ์€ 1 * 2 * 3 * 4 * 5 * .... * n ์ž…๋‹ˆ๋‹ค.

import java.util.Scanner;

public class Factorial {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int fact = 1;	// fact ์ด๋ผ๋Š” ๋ณ€์ˆ˜์— ์ดˆ๊ธฐ๊ฐ’ 1 ์„ ์–ธ.
		int n;	// n์ด๋ผ๋Š” ๋ณ€์ˆ˜ ์„ ์–ธ
		Scanner scan = new Scanner(System.in);	// ์‚ฌ์šฉ์ž์—๊ฒŒ ์ž…๋ ฅ๊ฐ’์„ ๋ฐ›๊ธฐ ์œ„ํ•ด Scannerํ•จ์ˆ˜ ํ˜ธ์ถœํ•œ ๋’ค scan์ด๋ผ๋Š” ๊ฐ์ฒด์— ๋„ฃ์Œ.
		
		System.out.printf("์ •์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”.: ");	// ์‚ฌ์šฉ์ž์—๊ฒŒ ์ •์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜๋ผ๊ณ  ์š”์ฒญ์„ ์ถœ๋ ฅ
		n = scan.nextInt();	// ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๊ฐ’์„ scan์ด๋ผ๋Š” ๋ณ€์ˆ˜ ์•ˆ์—์„œ nextInt()ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์ž…๋ ฅ ๋ฐ›์•„ ๋„ฃ์Œ.
		
		for (int i = 1; i <= n; i++) {	// for ๋ฌธ์˜ ์ดˆ๊ธฐ์‹์€ i๋ฅผ 1๋กœ ๋งŒ๋“ค๊ณ , i๊ฐ€ n(์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๊ฐ’) ๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜, ๋ฐ˜๋ณต๋ฌธ์„ ์‹คํ–‰ํ•˜๊ณ , ์‹คํ–‰ ๋’ค i๋ฅผ 1์”ฉ ์ฆ๊ฐ€ํ•œ๋‹ค.
			fact = fact * i;	// ๋ฐ˜๋ณต๋ฌธ ์‹คํ–‰ ๋‚ด์šฉ ( fact๋ผ๋Š” ๋ณ€์ˆ˜์— ๊ธฐ์กด fact ๋ณ€์ˆ˜ ๊ฐ’ ๊ณฑํ•˜๊ธฐ i์˜ ๋ณ€์ˆ˜ ๊ฐ’์„ ํ•ด์„œ ๋„ฃ์Œ)
		}
		System.out.printf("ํŒฉํ† ๋ฆฌ์–ผ ๊ฐ’์€ %d ์ž…๋‹ˆ๋‹ค.", fact); 
        // printf๋Š” formatํ˜•์‹์„ ์ถœ๋ ฅํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ. ๊ด„ํ˜ธ์•ˆ์— %d๋Š” 10์ง„์ˆ˜๋ฅผ ์ž…๋ ฅ ๋ฐ›๊ฒ ๋‹ค๋Š” ๊ฒƒ์ด๊ณ , fact์˜ ๊ฐ’์„ ๋ฐ›๋Š”๋‹ค.
		
	}

}

 


์ฃผ๋‹ˆํ•˜๋ž‘์˜ ์ด๋ฒˆ ํฌ์ŠคํŒ…์ด ์–ด๋– ์…จ๋‚˜์š”? ๊ตฌ๋…, ๊ณต๊ฐ๊ณผ ๋Œ“๊ธ€์€ ์ฃผ๋‹ˆํ•˜๋ž‘์—๊ฒŒ ๋งค์šฐ ํฐ ํž˜์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค!

728x90
๋ฐ˜์‘ํ˜•