Development/Java(853)
-
ResursiveEx02-잘못된 재귀 메소드 정의
잘못된 재귀 메소드 정의 종료조건이 만독되지 않으면 무한 루프에 빠질 수 있습니다. 종료조건 및 종료조건의 검사위치를 로직 상 점검 하시기 바랍니다. 종료조건은 메소드의 실행과 재귀 메소드 실행되는 사이에 존재해야 됩니다. 소스코드 public class ResursiveEx02 { public static void main(String[] args) { showJava(3); } /*잘못된 재귀 메소드 정의*/ /* public static void showJava(int cnt) { System.out.println("JAVA "); //재귀메소드 호출 showJava(cnt--); //Exception in thread "main" java.lang.StackOverflowError //종료조건 i..
-
RecursiveEx01-재귀 함수 호출
재귀 함수 호출 함수 코드의 복사본이 하나 더 생성해어 실행되는 것이 재귀입니다. 컴퓨터 시스템factorial(3)리턴 결과 3*factoral(2) = 6 2*factoral(1) = 2 1 소스코드 public class RecursiveEx01 { public static void main(String[] args) { System.out.println("3 factorial: " + factorial(3)); System.out.println("7 factorial: " + factorial(7)); System.out.println("12 factorial: " + factorial(12)); } public static int factorial(int n) { if(n==1) return 1..
-
VariableScopeEx01-변수의 범위 확인
변수의 범위 확인 소스코드
-
FunctionEx04-키워드 return의 역할
키워드 return의 역할 return 키워드 역할 값의 반환 메소드 종료 소스코드 public class FunctionEx04 { public static void main(String[] args) { dividedby(4, 2); dividedby(6, 2); dividedby(8, 0); int returnResult = divide(6, 2); System.out.println("리턴된 결과: " + returnResult); } /* return 키워드 역할 • 값의 반환 • 메소드 종료 */ public static void dividedby(int num1, int num2) { if(num2==0) { System.out.println("(알림)0값으로 나눌 수 없습니다."); //메소..
-
FunctionEx03-값을 반환하는 메소드
값을 반환하는 메소드 학습내용 값을 반환하는 메소드 값을 반화하지 않는 메소드 소스코드 public class FunctionEx03 { public static void main(String[] args) { int result=plus(3, 7); System.out.println("3와 7의 합: " + result); System.out.println("3.5의 제곱: " + square(3.5)); } //int형 데이터 반환 public static int plus(int num1, int num2) { int plusResult=num1+num2; return plusResult; } //double형 데이터 반환 public static double square(double num) { r..
-
FunctionEx02-메소드의 매개변수
메소드의 매개변수 학습내용 두개의 매개변수를 호출하는 함수 정의 및 호출 매개변수가 없는 함수 정의 및 호출 소스코드 public class FunctionEx02 { public static void main(String[] args) { System.out.println("프로그램의 시작"); int minute = 30; //메소드 실행(호출) tellTime(9, 11); tellTime(18, 30); tellTime(20, minute); //변수를 통한 메소드 호출 byEveryone(); System.out.println("프로그램의 끝"); } //매개변수는 전달 순서대로 저장 //hour = 9, minute = 11 public static void tellTime(int hour, ..