반복문,조건문을 이용한 Fizz-Buzz 게임


 Fizz-Buzz 게임 규칙 : 3,6,9게임과 유사한 게임으로 특정 숫자 2개를정하고, 첫번째 수의 배수이면 Fizz 두번째 수의 배수이면 Buzz 두 수의 공배수이면 fizzbuzz를 외치는 게임


 for문과 while문을 이용해서 메소드로 구현하고 호출해서 사용하는 코드입니다.



import java.util.Scanner;
public class FizzBuzz {
        void FizzFor() // for문을 이용한 메소드
        {
            for(int i=1; i<101; i++)
            {
                if(i%3==0 && i%5==0)
                {
                    System.out.print("FizzBuzz ");
                }
                else if(i%3==0)
                {
                    System.out.print("Fizz ");
                }
                else if(i%5==0)
                {
                    System.out.print("Buzz ");
                }
                else
                {
                    System.out.print(i+" ");
                }
            }
    
        }
        
        void FizzWhile() // While문을 이용한 메소드
        {
                int i=1;
                while(i<101)
            {
                if(i%3==0 && i%5==0)
                {
                    System.out.print("FizzBuzz ");
                }
                else if(i%3==0)
                {
                    System.out.print("Fizz ");
                }
                else if(i%5==0)
                {
                    System.out.print("Buzz ");
                }
                else
                {
                    System.out.print(i+" ");
                }
                i++;
            }
    
        }
    public static void main(String[] args) {
        // 5의 배수가 fizz 7의배수가 buzz
        while(true){
            Scanner s=new Scanner(System.in);
            System.out.print("원하시는 숫자를 선택하세요. \n 1]FizzFor() 2]FizzWhile() 0]종료 \n입력> ");
            int input=s.nextInt();
            FizzBuzz Fb= new FizzBuzz();
        if(input==1)
        {
            Fb.FizzFor();
        }
        else if(input==2)
        {
            Fb.FizzWhile();
        }
        else if(input ==0)
        {
            System.out.println("이용해주셔서 감사합니다.");
            break; // 0 을입력하면 종료
        }
        else{
            System.out.println("잘못된 값을 입력하셨습니다. 다시 입력하세요");
        }
        
        }//close while()
    }
}

(실행 결과)

원하시는 숫자를 선택하세요.
 1]FizzFor() 2]FizzWhile() 0]종료
입력> 1
1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Buzz Fizz 22 23 Fizz Buzz 26 Fizz 28 29 FizzBuzz 31 32 Fizz 34 Buzz Fizz 37 38 Fizz Buzz 41 Fizz 43 44 FizzBuzz 46 47 Fizz 49 Buzz Fizz 52 53 Fizz Buzz 56 Fizz 58 59 FizzBuzz 61 62 Fizz 64 Buzz Fizz 67 68 Fizz Buzz 71 Fizz 73 74 FizzBuzz 76 77 Fizz 79 Buzz Fizz 82 83 Fizz Buzz 86 Fizz 88 89 FizzBuzz 91 92 Fizz 94 Buzz Fizz 97 98 Fizz Buzz 원하시는 숫자를 선택하세요.
 1]FizzFor() 2]FizzWhile() 0]종료
입력> 2
1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Buzz Fizz 22 23 Fizz Buzz 26 Fizz 28 29 FizzBuzz 31 32 Fizz 34 Buzz Fizz 37 38 Fizz Buzz 41 Fizz 43 44 FizzBuzz 46 47 Fizz 49 Buzz Fizz 52 53 Fizz Buzz 56 Fizz 58 59 FizzBuzz 61 62 Fizz 64 Buzz Fizz 67 68 Fizz Buzz 71 Fizz 73 74 FizzBuzz 76 77 Fizz 79 Buzz Fizz 82 83 Fizz Buzz 86 Fizz 88 89 FizzBuzz 91 92 Fizz 94 Buzz Fizz 97 98 Fizz Buzz 원하시는 숫자를 선택하세요.
 1]FizzFor() 2]FizzWhile() 0]종료
입력> 5
잘못된 값을 입력하셨습니다. 다시 입력하세요
원하시는 숫자를 선택하세요.
 1]FizzFor() 2]FizzWhile() 0]종료
입력> 0
이용해주셔서 감사합니다.


출처 : [위키백과] https://en.wikipedia.org/wiki/Fizz_buzz




반복문을 이용한 구구단



- for문을 이용한 구구단 출력


          int i,j;

          for(i=2; i<10; i++)
          {
              for(j=1; j<10; j++){
                   System.out.print(i+"*"+j+"="+i*j+",");
              }
          System.out.println(" "); // 단을 구분하기 위한 개행

          }

(실행 결과)

2*1=2,2*2=4,2*3=6,2*4=8,2*5=10,2*6=12,2*7=14,2*8=16,2*9=18,
3*1=3,3*2=6,3*3=9,3*4=12,3*5=15,3*6=18,3*7=21,3*8=24,3*9=27,
4*1=4,4*2=8,4*3=12,4*4=16,4*5=20,4*6=24,4*7=28,4*8=32,4*9=36,
5*1=5,5*2=10,5*3=15,5*4=20,5*5=25,5*6=30,5*7=35,5*8=40,5*9=45,
6*1=6,6*2=12,6*3=18,6*4=24,6*5=30,6*6=36,6*7=42,6*8=48,6*9=54,
7*1=7,7*2=14,7*3=21,7*4=28,7*5=35,7*6=42,7*7=49,7*8=56,7*9=63,
8*1=8,8*2=16,8*3=24,8*4=32,8*5=40,8*6=48,8*7=56,8*8=64,8*9=72,
9*1=9,9*2=18,9*3=27,9*4=36,9*5=45,9*6=54,9*7=63,9*8=72,9*9=81,


- while문을 이용한 구구단 출력


          int i,j;
          i=1; j=1;
          while(i<10)
          {
              while(j<10){
                   System.out.print(i+"*"+j+"="+i*j+",");
                   j++;
              }
              System.out.println();
              j=1; // 초기화
              i++;
          }


- 원하는 단을 입력받아서 해당하는 단만 출력


import java.util.Scanner;
public class gugu
{
     

          Scanner s= new Scanner(System.in);
          // 입력을 받기 위한 Scanner클래스
          while(true){ // break를 만나기 전까지 계속 반복
              System.out.print("구구단을 출력하는 프로그램입니다.\n출력할 단을 입력하세요 (종료하시려면 0 입력) : ");
              int input=s.nextInt(); // 정수를 입력받아 input 변수에 저장
                   
              if(input==0){ // 0이 입력되면 종료
                   System.out.println("이용해주셔서 감사합니다.");
                   break;
              }
                   
              for(int i=1; i<10; i++){
                   System.out.println(input+"*"+i+"="+input*i);
              }//close for()
              System.out.println(); // 단을 출력한 뒤 한줄개행
          }//close while()
     }
}

(실행 결과)

구구단을 출력하는 프로그램입니다.
출력할 단을 입력하세요 (종료하시려면 0 입력) : 5
5*1=5
5*2=10
5*3=15
5*4=20
5*5=25
5*6=30
5*7=35
5*8=40
5*9=45
구구단을 출력하는 프로그램입니다.
출력할 단을 입력하세요 (종료하시려면 0 입력) : 0

이용해주셔서 감사합니다.





+ Recent posts