728x90

C#/함수 5

[C#] 재귀함수(Recursion)

1. 재귀함수란?함수 내부에서 자기 자신을 다시 호출하는 함수를 말한다.복잡한 문제를 더 작은 문제로 나누어 해결할 때 유용하다. void SayHello(int count) { if (count == 0) return; Console.WriteLine("안녕하세요!"); SayHello(count - 1); // 자기 자신 호출} 2. 재귀함수의 구조모든 재귀함수는 두 가지 구조를 갖는다.기저 조건(Base Case): 재귀를 멈추는 조건재귀 호출(Recursive Call): 자신을 다시 호출하는 부분int Factorial(int n) { if (n == 1) return 1; // 기저 조건 return n * Factorial(n - 1); // 재..

C#/함수 2025.04.17

[C#] ref, out

1. ref와 out이란?C#에서 기본적으로 함수에 인자를 전달하면 값이 복사되어 전달된다.하지만 ref, out 키워드를 사용하면 값이 아닌 변수 그 자체를 참조로 넘길 수 있다.즉, 함수 안에서 값을 변경하면 원래 변수도 같이 변경된다..! 2. ref 키워드함수 호출 전에 반드시 초기화 되어 있어야 함함수 안에서 값을 변경하면 호출한 쪽 변수에도 반영됨void DoubleValue(ref int num) { // return값이 없고 값만 바꿈 num *= 2;}int a = 10;DoubleValue(ref a); // 넘길때도 ref키워드를 붙여줘야한다Console.WriteLine(a); // 출력: 20 3. out 키워드초기화하지 않아도 호출 가능함수 내부에서 반드시 값을 할당해..

C#/함수 2025.04.17

[C#] 메서드 오버로딩(Method Overloading)

1. 메서드 오버로딩이란?같은 이름의 메서드를 매개변수 형태에 따라 여러 개 정의하는 것즉, 이름은 같지만 매개변수의 개수, 타입이 다르면 여러 메서드를 만들 수 있다. ✔ 컴파일러가 자동으로 매개변수에 맞는 메서드를 찾아 실행한다. 📝예시class Calculator { public int Add(int a, int b) { // 정수 return a + b; } public double Add(double a, double b) { // 실수 return a + b; } public int Add(int a, int b, int c) { // 숫자세개(매개변수세개) return a + b + c; }}Calculator cal =..

C#/함수 2025.04.17

[C#] 매개변수

1. 매개변수란?함수에 값을 전달할 때 사용하는 변수이다.함수 외부에서 전달된 값을 함수 내부에서 사용할 수 있게 해준다.void SayHello(string name) { Console.WriteLine($"안녕하세요, {name}님!");}SayHello("도치"); // 출력: 안녕하세요, 도치님! 위 코드에서 string name이 바로 매개변수이다.함수 호출 시 "도치"라는 값을 전달하고, 이 값이 name으로 들어가 출력에 사용된다. 2. 매개변수에 따른 함수의 형태함수는 매개변수와 반환값 유무에 따라 여러 형태로 나뉜다. ① 반환값이 없는 메서드void PrintMessage() { Console.WriteLine("반환값이 없는 함수입니다."); //매개변수도 없고, retur..

C#/함수 2025.04.17

[C#] 함수 개념

함수(메서드)란?함수(또는 메서드)는 특정 작업을 수행하는 코드의 묶음이다.복잡한 프로그램을 작고 읽기 쉬운 단위로 나누는 데 사용된다.함수구조반환형 함수이름(매개변수) { // 실행할 코드 return 반환값;} 📝 예시void SayHello() { Console.WriteLine("안녕하세요!");} 메서드는 왜 필요한가?유지보수와 재사용: 메서드를 호출함으로써 반복되는 코드를 줄일 수 있다.모듈화: 코드를 논리적으로 분리하여 관리할 수 있고 프로그램을 더 이해하기 쉽게 만든다.코드의 중복 제거: 동일한 기능을 여러 번 수행할 수 있게 한다.추상화: 메서드를 통해 작업단위를 추상화 하고, 메서드 이름을 통해 작업의 역할을 유추할 수 있다. 함수 호출함수 호출은 함수이름을 써서 실행..

C#/함수 2025.04.16
728x90