본문 바로가기

C++ programming

명품 C++ programming 실습 문제 5장 2번

문제 :

다음 main() 함수와 실행 결과를 참고하여 half() 함수를 작성하라.

1
2
3
4
5
int main() {
    double n = 20;
    half(n); // n의 반값을 구해 n을 바꾼다. 
    cout << n; // 10이 출력된다. 
}

 

실행 결과 :

 

목적 및 힌트 :

참조 연습

 

코드 :

1
2
3
4
5
6
7
8
9
10
11
12
#include<iostream>
using namespace std;
 
half(double &num){ // 참조에 의한 호출
    num /= 2// num으로 넘어온 본래의 값이 바뀜 
}
 
int main() {
    double n = 20;
    half(n); // n의 반값을 구해 n을 바꾼다. 
    cout << n; // 10이 출력된다. 
}
 

 

설명 :

참조에 의한 호출을 사용해 매개변수의 본래의 값도 변경 되었습니다.