728x90
반응형
사용자 정의 함수
Java Programming Tutorial 2017 by 나동빈
링크 : https://youtu.be/YwSsMH8GX2A
세 값 중 최소값을 반환하는 함수
public class Main {
// 반환형, 함수명, 매개변수
public static int function(int a, int b, int c) {
int min; // 정수형 min을 정의
if(a>b) // if 조건에 따라 min값을 다르게 설정
{
if(b>c)
{
min = c;
}
else
{
min = b;
}
}
else
{
if(a > c)
{
min = c;
}
else
{
min = a;
}
}
for(int i = min; i > 0; i--) // 초기값 i = min, i가 0보다 클 때, for문이 돌때마다 i = i-1 적용
{
if(a % i == 0 && b % 1 ==0 && c % 1 == 0)
{
return i;
}
}
return -1;
}
public static void main(String[] args) {
System.out.println("(400, 300, 750)의 최대 공약수 : " + function(400, 300, 750));
}
}
// (400, 300, 750)의 최대 공약수 : 200
- 상수를 정의할 때 사용하던 공간(class와 main 사이)에 사용자 함수를 정의한다
- public static 이후 '반환 형태 함수명(매개변수)'를 기입한다
number의 k번째 약수를 반환하는 함수
public class Main {
public static int function(int number, int k) {
for(int i = 1; i < number; i++)
{
if(number % i == 0)
{
k--;
if(k == 0)
{
return i;
}
}
}
return -1;
}
public static void main(String[] args) {
int result = function(3050, 10);
if(result == -1)
{
System.out.println("3050dml 10번째 약수는 없습니다.");
}
else
{
System.out.println("3050의 10번째 약수는 " + result + "입니다.");
}
}
}
- main도 일종의 함수로 볼 수 있고, 반환값이 없다는 의미에서 void가 사용된다
입력 값 중 마지막 단어를 반환하는 함수
public class Main {
public static char function(String input) {
return input.charAt(input.length() - 1);
}
public static void main(String[] args) {
System.out.println("Hello World의 마지막 단어는 " + function("Hello World"));
}
}
- String input : function의 괄호 안에 입력되는 문자열을 읽어들이기 위해 사용
- input.charAt(N) : input()된 값의 N번 째에 해당하는 값
세 입력값 중 가장 큰 수를 반환하는 함수
public class Main {
public static int max(int a, int b) {
return (a > b) ? a : b;
}
public static int function(int a, int b, int c) {
int result = max(a, b);
result = max(result, c);
return result;
}
public static void main(String[] args) {
System.out.println("(345, 567, 789) 중에서 가장 큰 값은 " + function(345, 567, 789));
}
}
- (a > b) ? a : b : 조건(괄호)를 만족한다면 a, 만족하지 못한다면 b를 선택하게 됨 - 삼항연산자
'Algorithm Study > Java' 카테고리의 다른 글
[코드업 자바] # 1012 [기초-입출력] 실수 1개 입력받아 그대로 출력하기 (0) | 2021.12.24 |
---|---|
[자바 기초 프로그래밍] 배열 (0) | 2021.12.23 |
[자바 기초 프로그래밍] 반복함수와 재귀함수 (0) | 2021.12.23 |
[자바 기초 프로그래밍] 기본 입출력 (0) | 2021.12.22 |
[코드업 자바] # 1008 [기초-출력] 출력하기08 (0) | 2021.12.19 |