[Java] 제어문 - 예제

나영원·2020년 8월 24일
0

Java_basic

목록 보기
14/60

지금까지 배운 제어문을 활용하여 두 가지 예제를 풀어보도록 하겠습니다.

Q1. 연산자와 두 수를 변수로 선언한 후 사칙연산이 수행 되는 프로그램을 만들어 보세요.
if - else ife -else if, swtich -case 두 방식 모두 구현해 봅니다.

public class Q1 {

	public static void main(String[] args) {
		
		char operator = '/';
		int i = 10;
		int o = 5;
		int result;
		
		if (operator == '+') {
			result = i + o;
		} else if(operator == '-') {
			result = i - o;
		} else if(operator == '*') {
			result = i * o;
		} else {
			result = i / o;
		}

		System.out.println(result); // 2

if -else if 방식을 활용하여 opreator의 경우에 따라 4가지 조건을 만들어 입력값 i와 o를 사칙연산 하도록 구현하였습니다.

public class Q1switch {

	public static void main(String[] args) {
		
		char operator = '/';
		int i = 10;
		int o = 5;
		int result;
		
		switch(operator) {
		  case '+' : result = i + o;
			System.out.println(result);
			break;
		  case '-' : result = i - o;
			System.out.println(result);
			break;
		  case '*' : result = i * o;
			System.out.println(result);
			break;
		  default : result = i / o;
			System.out.println(result);
			break;
		}

switch-case 문의 경우도 마찬가지로 case를 4가지 연산자로 두어 사친연산을 할 수 있게 구현하였습니다.

Q2. 다음 다이아몬드를 출력해 보세요.

                       *

                      ***

                     *****

                    *******

                     *****

                      ***

                       *
import java.util.Scanner;

public class Q222 {

	public static void main(String[] args) {
		
System.out.println("홀수 값을 입력하세요:");
		
		Scanner scanner = new Scanner(System.in);
		int linecount = scanner.nextInt();
		int spacecount = linecount/2;
	    int starcount = 1;
		
		for (int i = 0; i < linecount; i++) {
			
			for(int j = 0; j <spacecount; j++ ) {
				System.out.print(" ");
			}
			for(int j = 0; j <starcount; j++ ) {
				System.out.print("*");
			}
			for(int j = 0; j <spacecount; j++ ) {
				System.out.print(" ");
			}
			System.out.println(" ");
			
			if (i < linecount/2 ) {
				spacecount -=1;
				starcount +=2;
			} else {
				spacecount +=1;
				starcount -=2;
			}
		}

다이아몬드를 살펴보면 첫째 줄 공백은 전체 줄에 2를 나눈 값과 같고 별은 하나입니다. 그리고 각줄마다 공백은 1칸씩 줄어들고 별은 2개씩 늘어나다가 전체줄에 반이 지나면 다시 반대로 공백이 1칸씩늘고 별이 2개씩 줄어듬을 알 수 있습니다. 이정보를 토대로 반복문을 만들고 그안에 조건문을 집어 넣어 줄이 늘어남에 따라 공백과 별의 증감을 주어 홀수 입력값에 따라 만들어지는 다이아몬드를 구현해 보았습니다.

profile
배우는 개발 일기

0개의 댓글

관련 채용 정보