๐Ÿ’ป Java - while๋ฌธ์„ ํ™œ์šฉํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ’€์ด

My Pale Blue Dotยท2025๋…„ 2์›” 28์ผ
0

JAVA

๋ชฉ๋ก ๋ณด๊ธฐ
8/35
post-thumbnail

๐Ÿ“… ๋‚ ์งœ

2025-02-28

๐Ÿ“Œ ํ•™์Šต ๋‚ด์šฉ

์˜ค๋Š˜์€ while ๋ฌธ์„ ํ™œ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ๋ณ„ ์ฐ๊ธฐ ํŒจํ„ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ตฌํ˜„ํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.
๊ฐ ํŒจํ„ด์—์„œ while ๋ฌธ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹๊ณผ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ ์ธ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์„ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.


๐Ÿ“ ๋ฌธ์ œ 1: ์ง์‚ฌ๊ฐํ˜• ๋ณ„ ์ฐ๊ธฐ

๐Ÿ”น ๋ฌธ์ œ ์„ค๋ช…

  • N ร— M ํฌ๊ธฐ์˜ ๋ณ„ ํŒจํ„ด์„ ์ถœ๋ ฅํ•˜์„ธ์š”.
  • N์€ ๋†’์ด(ํ–‰), M์€ ๋„ˆ๋น„(์—ด)์ž…๋‹ˆ๋‹ค.

๐Ÿ”น ์ฝ”๋“œ

import java.util.Scanner;

public class RectangleStar {
    public static void main(String[] args) {
        int height = 4; // ๋†’์ด
        int width = 5;  // ๋„ˆ๋น„

        int i = 1;
        while (i <= height) { // N๊ฐœ์˜ ํ–‰์„ ์ถœ๋ ฅ
            int j = 1;
            while (j <= width) { // ๊ฐ ํ–‰์—์„œ M๊ฐœ์˜ ๋ณ„ ์ถœ๋ ฅ
                System.out.print("*");
                j++;
            }
            System.out.println(); // ์ค„ ๋ฐ”๊ฟˆ
            i++;
        }
    }
}

โœ… ์ถœ๋ ฅ ๊ฒฐ๊ณผ

*****
*****
*****
*****

๐Ÿ“ ๋ฌธ์ œ 2: ๊ณ„๋‹จํ˜• ๋ณ„ ์ฐ๊ธฐ

๐Ÿ”น ๋ฌธ์ œ ์„ค๋ช…

  • * โ†’ ** โ†’ *** โ†’ **** ํ˜•ํƒœ๋กœ ๋ณ„์„ ๋Š˜๋ ค๊ฐ€๋ฉฐ ์ถœ๋ ฅํ•˜์„ธ์š”.

๐Ÿ”น ์ฝ”๋“œ

public class StairStar {
    public static void main(String[] args) {
        int height = 4; // ๋†’์ด ์„ค์ •
        int i = 1;
        
        while (i <= height) {
            int j = 1;
            while (j <= i) { // i๊ฐ’๋งŒํผ ๋ณ„ ์ถœ๋ ฅ
                System.out.print("*");
                j++;
            }
            System.out.println();
            i++;
        }
    }
}

โœ… ์ถœ๋ ฅ ๊ฒฐ๊ณผ

*
**
***
****

๐Ÿ“ ๋ฌธ์ œ 3: ํ™€์ˆ˜ ๊ฐœ์ˆ˜ ์ฆ๊ฐ€ ํŒจํ„ด

๐Ÿ”น ๋ฌธ์ œ ์„ค๋ช…

  • * โ†’ *** โ†’ ***** โ†’ ******* ํ˜•ํƒœ๋กœ ๋ณ„ ๊ฐœ์ˆ˜๋ฅผ ํ™€์ˆ˜ ๋‹จ์œ„๋กœ ์ฆ๊ฐ€ํ•˜์„ธ์š”.

๐Ÿ”น ์ฝ”๋“œ

public class OddStarPattern {
    public static void main(String[] args) {
        int height = 4; // ์ถœ๋ ฅํ•  ์ค„ ์ˆ˜
        int i = 1; // ํ–‰์„ ์ œ์–ดํ•˜๋Š” ๋ณ€์ˆ˜

        while (i <= height) {
            int j = 1;
            while (j <= (2 * i - 1)) { // ํ™€์ˆ˜ ๊ฐœ์ˆ˜๋กœ ๋ณ„ ์ถœ๋ ฅ
                System.out.print("*");
                j++;
            }
            System.out.println();
            i++;
        }
    }
}

โœ… ์ถœ๋ ฅ ๊ฒฐ๊ณผ

*
***
*****
*******

๐Ÿ“ ๋ฌธ์ œ 4: ๋‹ค์ด์•„๋ชฌ๋“œ ํŒจํ„ด

๐Ÿ”น ๋ฌธ์ œ ์„ค๋ช…

  • ์œ„์ชฝ ์‚ผ๊ฐํ˜•๊ณผ ์•„๋ž˜์ชฝ ์‚ผ๊ฐํ˜•์„ ์กฐํ•ฉํ•˜์—ฌ ๋‹ค์ด์•„๋ชฌ๋“œ ํŒจํ„ด์„ ์ถœ๋ ฅํ•˜์„ธ์š”.

๐Ÿ”น ์ฝ”๋“œ

public class DiamondPattern {
    public static void main(String[] args) {
        int height = 4;

        // ์œ„์ชฝ ์‚ผ๊ฐํ˜•
        int i = 1;
        while (i <= height) {
            int j = 1;
            while (j <= (2 * i - 1)) {
                System.out.print("*");
                j++;
            }
            System.out.println();
            i++;
        }

        // ์•„๋ž˜์ชฝ ์‚ผ๊ฐํ˜•
        i = height - 1;
        while (i >= 1) {
            int j = 1;
            while (j <= (2 * i - 1)) {
                System.out.print("*");
                j++;
            }
            System.out.println();
            i--;
        }
    }
}

โœ… ์ถœ๋ ฅ ๊ฒฐ๊ณผ

*
***
*****
*******
*****
***
*

๐Ÿ“ ๋ฌธ์ œ 5: ๋ฐ˜์ „๋œ ๋‹ค์ด์•„๋ชฌ๋“œ ํŒจํ„ด

๐Ÿ”น ๋ฌธ์ œ ์„ค๋ช…

  • ******* โ†’ ***** โ†’ *** โ†’ * โ†’ * โ†’ *** โ†’ ***** โ†’ *******
  • ์œ„์—์„œ ๋ณ„ ๊ฐœ์ˆ˜๋ฅผ ์ค„์˜€๋‹ค๊ฐ€ ๋‹ค์‹œ ์ฆ๊ฐ€ํ•˜๋Š” ํŒจํ„ด์„ ์ถœ๋ ฅํ•˜์„ธ์š”.

๐Ÿ”น ์ฝ”๋“œ

public class ReverseDiamondPattern {
    public static void main(String[] args) {
        int h = 4; // ๋†’์ด ์„ค์ •
        int i = 1;
        int step = 2;
        int stars = 2 * h - 1; // ์ดˆ๊ธฐ ๋ณ„ ๊ฐœ์ˆ˜

        while (i <= 2 * h) { // ์ด 8์ค„ ์ถœ๋ ฅ
            int j = 0;
            while (j < stars) { // ํ˜„์žฌ ์ค„์˜ ๋ณ„ ๊ฐœ์ˆ˜๋งŒํผ ์ถœ๋ ฅ
                System.out.print("*");
                j++;
            }
            System.out.println();

            if (i < h) { // ์œ„์ชฝ ์‚ผ๊ฐํ˜• ๋ถ€๋ถ„ (๋ณ„ ๊ฐœ์ˆ˜ ๊ฐ์†Œ)
                stars -= step;
            } else if (i == h) { // ์ค‘๊ฐ„ ์ค„ (๋ณ€ํ™” ์—†์Œ)
                stars = stars;
            } else { // ์•„๋ž˜์ชฝ ์‚ผ๊ฐํ˜• ๋ถ€๋ถ„ (๋ณ„ ๊ฐœ์ˆ˜ ์ฆ๊ฐ€)
                stars += step;
            }
            i++;
        }
    }
}

โœ… ์ถœ๋ ฅ ๊ฒฐ๊ณผ

*******
*****
***
*
*
***
*****
*******

๐Ÿ“Œ ๊ฒฐ๋ก 

  • while ๋ฐ˜๋ณต๋ฌธ์„ ํ™œ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ๋ณ„ ์ฐ๊ธฐ ํŒจํ„ด์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • stars ๋ณ€์ˆ˜๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ฆ๊ฐ€ ๋ฐ ๊ฐ์†Œ ๋กœ์ง์„ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ผ๊ฐํ˜•, ๋‹ค์ด์•„๋ชฌ๋“œ, ๋ฐ˜์ „ ๋‹ค์ด์•„๋ชฌ๋“œ ๋“ฑ์˜ ํŒจํ„ด์„ ์ดํ•ดํ•˜๊ณ  ์ฝ”๋“œ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํ•™์Šตํ–ˆ๋‹ค.

๐ŸŽฏ ์ถ”๊ฐ€ ๋„์ „ ๊ณผ์ œ

  • ์ค‘์•™ ์ •๋ ฌ๋œ ํŒจํ„ด์„ ์ถ”๊ฐ€๋กœ ๊ตฌํ˜„ํ•ด๋ณด๊ธฐ.
  • for ๋ฌธ์„ ํ™œ์šฉํ•˜์—ฌ ๊ฐ™์€ ํŒจํ„ด์„ ๊ตฌํ˜„ํ•ด๋ณด๊ธฐ.
  • ์‚ฌ์šฉ์ž๊ฐ€ ์›ํ•˜๋Š” ๋ชจ์–‘์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก ํ™•์žฅํ•ด๋ณด๊ธฐ. ๐Ÿš€๐Ÿ”ฅ

profile
Here, My Pale Blue.๐ŸŒ

0๊ฐœ์˜ ๋Œ“๊ธ€