Algorithm/Do it 자료구조와 함께 배우는 알고리즘 입문
[Algorithm] Chapter01 연습문제 Q1 ~ Q3
준그래머
2021. 3. 27. 10:30
반응형
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 + "입니다.");
}
}
솔직히 이쪽 부분은 너무 쉬워서 포스팅 할까 말까 고민했지만 꾸준히 처음부터 작성하자는 마음에 일단 포스팅해보았다...