본문 바로가기
Algorithm/Do it 자료구조와 함께 배우는 알고리즘 입문

[Algorithm] Chapter01 연습문제 Q1 ~ Q3

by 준그래머 2021. 3. 27.
반응형

Q1 네 값의 최대값을 구하는 max4 메서드를 작성하세요.

static int max4(int a, int b, int c, int d)

 

내 답안

import java.util.Scanner;

public class chap_01_q1_max4 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("숫자 4개를 입력해주세요");
        int a = scanner.nextInt();
        int b = scanner.nextInt();
        int c = scanner.nextInt();
        int d = scanner.nextInt();

        System.out.println("최댓값은 " + max4(a, b, c, d) + " 입니다.");
    }

    private static int max4(int a, int b, int c, int d) {
        int max = a;

        if(max < b) {
            max = b;
        }

        if(max < c){
            max = c;
        }

        if(max < d){
            max = d;
        }

        return max;
    }
}

 

 

해당 답안

package chap01;
import java.util.Scanner;
// 네 값의 최댓값을 구하여 나타냄

class Max4_01_01 {
	// a, b, c, d의 최댓값을 구하여 반환
	static int max4(int a, int b, int c, int d) {
		int max = a; 	// 최댓값
		if (b > max)
			max = b;
		if (c > max)
			max = c;
		if (d > max)
			max = d;

		return max;
	}

	public static void main(String[] args) {
		Scanner stdIn = new Scanner(System.in);
		int a, b, c, d;

		System.out.println("네 정수의 최댓값을 구합니다.");
		System.out.print("a의 값:");
		a = stdIn.nextInt();
		System.out.print("b의 값:");
		b = stdIn.nextInt();
		System.out.print("c의 값:");
		c = stdIn.nextInt();
		System.out.print("d의 값:");
		d = stdIn.nextInt();

		int max = max4(a, b, c, d); 	// a, b, c, d의 최댓값

		System.out.println("최댓값은 " + max + "입니다.");
	}
}

 

 

Q2 세 값의 최솟값을 구하는 min3 메서드를 작성하세요.

static int min3(int a, int b, int c)

 

 

내 답안

import java.util.Scanner;

public class chap_01_q2_min3 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("숫자 3개를 입력해주세요.");
        int a = scanner.nextInt();
        int b = scanner.nextInt();
        int c = scanner.nextInt();

        System.out.println("최솟값은 " + min3(a, b, c) + " 입니다.");
    }

    private static int min3(int a, int b, int c) {
        int min = a;

        if(min > b) min = b;

        if(min > c) min = c;

        return min;
    }
}

 

해당 답안

package chap01;
import java.util.Scanner;
// 3개의 값의 최솟값을 구하여 출력

class Min3_01_02 {
   // a, b, c의 최솟값을 구하여 반환
   static int min3(int a, int b, int c) {
      int min = a;         			// 최솟값
      if (b < min) min = b;
      if (c < min) min = c;

      return min;
   }

   public static void main(String[] args) {
      Scanner stdIn = new Scanner(System.in);
      int a, b, c;

      System.out.println("세 정수의 최솟값을 구합니다.");
      System.out.print("a의 값:");  a = stdIn.nextInt();
      System.out.print("b의 값:");  b = stdIn.nextInt();
      System.out.print("c의 값:");  c = stdIn.nextInt();

      int min = min3(a, b, c);   	// a, b, c의 최솟값

      System.out.println("최솟값은 " + min + "입니다.");
   }
}

 

 

Q3 네 값의 최솟값을 구하는 min4 메서드를 작성하세요.

static int min4(int a, int b, int c, int d)

 

내 답안

import java.util.Scanner;

public class chap_01_q3_min4 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("숫자 4개를 입력해주세요.");
        int a = scanner.nextInt();
        int b = scanner.nextInt();
        int c = scanner.nextInt();
        int d = scanner.nextInt();

        System.out.println("최솟값은 " + min4(a, b, c, d) + " 입니다.");
    }

    private static int min4(int a, int b, int c, int d) {
        int min = a;

        if(min > b) min = b;

        if(min > c) min = c;

        if(min > d) min = d;

        return min;
    }

}

 

해당 답안

package chap01;
import java.util.Scanner;
// 4개의 값의 최솟값을 구하여 출력

class Min4_01_03 {
   // a, b, c, d의 최솟값을 구하여 반환
   static int min4(int a, int b, int c, int d) {
      int min = a;         // 최솟값
      if (b < min) min = b;
      if (c < min) min = c;
      if (d < min) min = d;

      return min;
   }

   public static void main(String[] args) {
      Scanner stdIn = new Scanner(System.in);
      int a, b, c, d;

      System.out.println("네 정수의 최솟값을 구합니다.");
      System.out.print("a의 값:");  a = stdIn.nextInt();
      System.out.print("b의 값:");  b = stdIn.nextInt();
      System.out.print("c의 값:");  c = stdIn.nextInt();
      System.out.print("d의 값:");  d = stdIn.nextInt();

      int min = min4(a, b, c, d);      // a, b, c, d의 최솟값

      System.out.println("최솟값은 " + min + "입니다.");
   }
}

 

솔직히 이쪽 부분은 너무 쉬워서 포스팅 할까 말까 고민했지만 꾸준히 처음부터 작성하자는 마음에 일단 포스팅해보았다...

반응형