๐ŸŒท ๊ฐœ์ธ ๊ณผ์ œ leve1(1~4)

์ด์œ ์ง„ยท2024๋…„ 7์›” 25์ผ

TIL

๋ชฉ๋ก ๋ณด๊ธฐ
12/24

๐ŸŒท ๊ฐœ์ธ ๊ณผ์ œ leve1

โ€‹ 1~3๊นŒ์ง€๋Š” ์–ด์ฐŒ์ €์ฐŒ ์ž˜ ํ•ด๊ฒฐํ•˜์˜€๋‹ค!! ํ•˜์ง€๋งŒ 4๋ฒˆ๋ถ€ํ„ฐ ์Šฌ์Šฌ ์ƒ๊ฐํ•ด์•ผ ํ•  ๊ฒƒ๋“ค์ด ๋งŽ์•„์ง€๋Š”๋ฐ...

    1. ๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ˜๋ณต์˜ ์ข…๋ฃŒ๋ฅผ ์•Œ๋ ค์ฃผ๋Š” โ€œexitโ€ ๋ฌธ์ž์—ด์„ ์ž…๋ ฅํ•˜๊ธฐ ์ „๊นŒ์ง€ ๋ฌดํ•œ์œผ๋กœ ๊ณ„์‚ฐ์„ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

      ๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. (e.g. for, while โ€ฆ)

      public class App {
          public static void main(String[] args) {
              Scanner sc = new Scanner(System.in);
              /* ๋ฐ˜๋ณต๋ฌธ ์‚ฌ์šฉ ํ•ด์„œ ์—ฐ์‚ฐ์„ ๋ฐ˜๋ณต */
              ...
              System.out.println("๊ฒฐ๊ณผ: " + result);
              
              System.out.println("๋” ๊ณ„์‚ฐํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? (exit ์ž…๋ ฅ ์‹œ ์ข…๋ฃŒ)");
              /* exit์„ ์ž…๋ ฅ ๋ฐ›์œผ๋ฉด ๋ฐ˜๋ณต ์ข…๋ฃŒ */
          }
      }

๐Ÿ”’ ์˜๋ฌธ ๋ฐ ์˜ค๋ฅ˜

  • ์˜๋ฌธ 1. for๋ฌธ์— ์ดˆ๊ธฐ๊ฐ’์ด๋ž‘ ์กฐ๊ฑด, ์ฆ๊ฐ๊ฐ’ ์ด๊ฑธ ์–ด๋–ป๊ฒŒ ์ ์–ด์•ผํ•˜์ง€..?

    • ๊ฐ•์˜์—์„œ ๋ฐฐ์šด๋Œ€๋กœ for๋ฌธ ๋ฐฐ์šธ ๋•Œ ์ฒ˜์Œ๊ตฌ์กฐ์— ์ดˆ๊ธฐ๊ฐ’, ์กฐ๊ฑด, ์ฆ๊ฐ๊ฐ’์„ ์ ์œผ๋ผ๊ณ  ๋ฐฐ์›Œ์„œ ๋ญ˜ ์ ์–ด์•ผ ํ•  ์ง€ ๋ง‰๋ง‰ํ•ด์„œ for๋ฌธ ์˜ˆ์ œ๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ๊ตฌ๊ธ€๋ง ํ–ˆ๋Š”๋ฐ ์ด๋Ÿฐ!! ์•„๋ฌด๊ฒƒ๋„ ์•ˆ์ ์–ด๋„ ๋˜์ž–์•„..?๐Ÿซข ์œ ๋ ˆ์นด์˜€๋‹ค,,

      ๐Ÿ‘‰for( ; ; ){} ์ด๋ ‡๊ฒŒ ; ์œผ๋กœ ๋‚˜๋ˆ ์ฃผ๊ธฐ๋งŒ ํ•˜๊ณ  ๋น„์–ด๋†“์œผ๋ฉด ๋ฌดํ•œ๋ฃจํ”„ ์ƒํƒœ๊ฐ€ ๋œ๋‹คโ€ผ๏ธ

  • ์˜๋ฌธ 2. exit๋„ ์ž…๋ ฅ๋ฐ›์„ ์ˆ˜ ์žˆ์œผ๋ ค๋ฉด ๋ฌธ์ž์—ด๋กœ ๋ฐ”๊ฟ”์•ผํ•˜๋Š”๋ฐ String์œผ๋กœ ๋ฐ”๊พธ๋ฉด ๋ฌธ์ž๋„ ๋˜๊ณ  ์ˆซ์ž๋„ ๋ฐ›์„ ์ˆ˜ ์žˆ๋˜๊ฐ€..?

    • ์ด๋ถ€๋ถ„์—์„œ ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ•  ์ง€ ๊ต‰์žฅํžˆ ๊ณ ๋ฏผ์„ ๋งŽ์ด ํ–ˆ๋‹ค. ์ง€๊ธˆ ์ƒ๊ฐํ•˜๋ฉด ๋„ˆ๋ฌด ์‰ฌ์šด๋ฐ ๊ทธ๋• ์™œ ์ด ์ƒ๊ฐ์„ ๋ชปํ–ˆ์ง€? ๋ฐ”๋กœ ํ˜•๋ณ€ํ™˜์„ ํ•ด์ฃผ๋ฉด ๋œ๋‹ค!
    • ์ž…๋ ฅ๋ฐ›์€ ๊ฐ’์ด exit์ผ ๊ฒฝ์šฐ if๋ฌธ์œผ๋กœ ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•˜๊ณ  ๋งŒ์•ฝ ์ˆซ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›์œผ๋ฉด if๋ฌธ ์•„๋ž˜์— ๋ฌธ์ž์—ด์„ ์ˆซ์ž๋กœ ํ˜• ๋ณ€ํ™˜ ํ•ด์ฃผ๋Š” ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ๋œ๋‹ค.
    • Integer num1 = Integer.valueOf(input1); // ํ˜• ๋ณ€ํ™˜ ๐Ÿ‘‰ ๋ฌธ์ž์—ด์„ ์ •์ˆ˜๋กœ ๋ฐ”๊ฟ€ ๊ฒฝ์šฐ int๊ฐ€ ์•„๋‹Œ Integer.valueOf๋ฅผ ์จ์•ผํ•œ๋‹ค. (์ด ๋ถ€๋ถ„๋„ int๋กœ ํ–ˆ๋”๋‹ˆ ์˜ค๋ฅ˜๋‚˜์„œ ๊ตฌ๊ธ€๋ง ํ–ˆ์Œ)
  • ๋ฌธ์ž์—ด์ด exit๋ž‘ ์ผ์น˜ํ•œ์ง€ ํ™•์ธํ•  ๋•Œ == ์ผ๋”๋‹ˆ ์˜ค๋ฅ˜๋œธ...

    • ๋ถ„๋ช… char๋กœ ์ฒ˜์Œ์— ํ–ˆ์„ ๋•Œ operator == '+'์ด๋Ÿฐ์‹์œผ๋กœ ๋น„๊ต ์—ฐ์‚ฐ์ž ์จ๋„ ๋์—ˆ๋Š”๋ฐ String์€ ์•ˆ๋˜๋Š” ๊ฒƒ์ž„,, ๊ฐ™์€ '๋ฌธ์ž'์—ฌ์„œ ๋  ์ค„ ์•Œ์•˜,,, ์ด๋ถ€๋ถ„์€ ๋‹ต๋‹ตํ•ด์„œ gptํ•œํ…Œ ๋ฌผ์–ด๋ดค๋‹ค.
    • (operator.equals("*")) ์ด๋ ‡๊ฒŒ ๋ณ€๊ฒฝํ–ˆ๋”๋‹ˆ ๋œ๋‹ค~!

๐Ÿ”“ํ•ด๊ฒฐ ํ›„ ์ฝ”๋“œ

  • ์ด๋ ‡๊ฒŒ ์˜ค๋ฅ˜๋“ค์„ ๋‹ค ํ•ด๊ฒฐ ํ•œ ํ›„ 4๋ฒˆ๊นŒ์ง€์˜ ์ฝ”๋“œ!!

    package calculator;
    
    import java.util.Scanner;
    
    public class App {
    
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
    
            for(;;) {
                System.out.println("์ฒซ ๋ฒˆ์งธ ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”: (์ข…๋ฃŒํ•˜๋ ค๋ฉด exit ์ž…๋ ฅ)");
                String input1 = sc.nextLine(); // ๊ฐ’์„ ์ž…๋ ฅ๋ฐ›์Œ
                if (input1.equals("exit")) {
                    System.out.println("ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.");
                    break;
                }
                Integer num1 = Integer.valueOf(input1); // ๋ฌธ์ž์—ด์—์„œ ์ •์ˆ˜๋กœ ํ˜•๋ณ€ํ™˜
    
                System.out.println("๋‘ ๋ฒˆ์งธ ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”: (์ข…๋ฃŒํ•˜๋ ค๋ฉด exit ์ž…๋ ฅ)");
                String input2 = sc.nextLine();
                if (input2.equals("exit")) {
                    System.out.println("ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.");
                    break;
                }
                Integer num2 = Integer.valueOf(input2); // ๋ฌธ์ž์—ด์—์„œ ์ •์ˆ˜๋กœ ํ˜•๋ณ€ํ™˜
    
                System.out.println("์‚ฌ์น™์—ฐ์‚ฐ ๊ธฐํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”: (์ข…๋ฃŒํ•˜๋ ค๋ฉด exit ์ž…๋ ฅ)");
                // charAt(idx) : charAt ๋ฉ”์„œ๋“œ๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ char ํƒ€์ž…์œผ๋กœ ๋ฐ˜ํ™˜ ํ•˜๊ณ ์žํ•˜๋Š” ๋ฌธ์ž์—ด์˜ 								์œ„์น˜(index)๋ฅผ ๋ฐ›๋Š”๋‹ค.
                String operator = sc.nextLine();
                if (operator.equals("exit")) {
                    System.out.println("ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.");
                    break;
                }
    
                int result = 0;
                if (operator.equals("+")) {
                    result = num1 + num2;
                    System.out.println("๊ฒฐ๊ณผ: " + result);
                } else if (operator.equals("-")) {
                    result = num1 - num2;
                    System.out.println("๊ฒฐ๊ณผ: " + result);
                } else if (operator.equals("*")) {
                    result = num1 * num2;
                    System.out.println("๊ฒฐ๊ณผ: " + result);
                } else if (operator.equals("/")) {
                    if (num2 == 0) { // ๋ถ„๋ชจ์— 0์ด ์ž…๋ ฅ๋  ์ˆ˜ ์—†๋Š” ์กฐ๊ฑด ๋‹ฌ์•„์คŒ
                        System.out.println("๋ถ„๋ชจ์— 0์ด ์ž…๋ ฅ๋  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.");
                    } else {
                        result = num1 / num2;
                        System.out.println("๊ฒฐ๊ณผ: " + result);
                    }
                } else{ // ๋‹ค๋ฅธ ๊ธฐํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜์˜€์„ ๊ฒฝ์šฐ
                    System.out.println("๋ชจ๋ฅด๋Š” ๊ธฐํ˜ธ์ž…๋‹ˆ๋‹ค.");
    
                }
            }
        }
    }
profile
๐Ÿ™Œ์ค‘์š”ํ•œ๊ฑด ๊บพ์˜€๋Š”๋ฐ๋„ ๊ทธ๋ƒฅ ํ•˜๋Š” ๋งˆ์Œ

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