알고리즘
알고리즘이란? - 최소, 최댓, 중앙값 구하기
망재이
2023. 1. 29. 14:06
- 알고리즘이란 : 어떤 문제를 해결하기 위한 절차로, 명확하게 정의되고 순서가 있는 유한 개의 규칙으로 이루어진 집합
- 최댓값과 최솟값을 구하는 예제를 보고 이해해보자
public static void main(String[] args)
{
Scanner src = new Scanner(System.in);
System.out.println("세 정수의 최댓값을 구합니다.");
System.out.println("첫번째 정수의 값 : ");int a = src.nextInt();
System.out.println("두번째 정수의 값 : ");int b = src.nextInt();
System.out.println("세번째 정수의 값 : ");int c = src.nextInt();
int max = a;
if(max<b) { //실행흐름을 변경하는 if문을 선택 구조라고 한다.
max = b;
}
if(max<c) {
max = c;
}
System.out.println("최댓값은 "+max+"입니다.");
}
//메소드로 지정해줘도 사용하기 편하다.
static int max3(int a,int b, int c) {
int max = a;
if(max<b) {
max = b;
}
if(max<c) {
max = c;
}
return max;
}
더보기
- max에 a 값을 넣는다.
- b값이 max보다 크면 max에 b 값을 넣는다.
- c값이 max보다 크면 max에 c 값을 넣는다.
- 4가지 정수의 최댓값, 3가지 정수의 최솟값, 4가지 정수의 최솟값 구하기
public class P19_quiz
{
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;
}
static int min3(int a,int b,int c) {
int min = a;
if(min>b) {
min = b;
}
if(min>c) {
min = c;
}
return min;
}
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;
}
public static void main(String[] args)
{
System.out.println(max4(3, 2, 4, 5));
System.out.println(min3(2, 6, 4));
System.out.println(min4(2, 5, 3, 6));
}
}
- 중앙값은 최대, 최소값을 구하는 식보다 더 까다롭다.
package 알고리즘;
import java.util.Scanner;
public class Middlevalue_1C_1
{
static int med(int a, int b, int c) {
if(a>=b) {
if(b>=c) {
return b;
} else if(c>=a) {
return a;
}
}else if(a>c) { //a는 b보다 작은 값이기 때문에 a와 c를 비교해줘야 한다.
return a;
}else if(b>c) {
return c;
}else {return b;}
return 0;
}
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.println("a:");
int a = in.nextInt();
System.out.println("b:");
int b = in.nextInt();
System.out.println("c:");
int c = in.nextInt();
System.out.println("중앙값 : "+med(a, b, c));
}
}
728x90