1. 문제

 

4. 배열에서 원소를 검색하는 search() 함수를 템플릿으로 작성하라. search()의 첫번째 매개 변수는 검색하고자 하는 원소 값이고, 두 번째 매개 변수는 배여이며, 세 번째 매개 변수는 배열의 개수이다. search() 함수가 검색에 성공하면 true를, 아니면 false를 리턴한다. search()의 호출 사례는 다음과 같다.

 

2. 결과

 

 

 

3. 코드

#include <iostream>
using namespace std;

template <class T>
bool search( T se, T a[], int size) {
	for(int i=0; i<size; i++)
		if( a[i] == se ) return true;
	return false;
}

int main() {
	int x[] = {1, 10, 100, 5, 4};
	
	if( search(100, x, 5) ) cout << "100이 배열 x에 포함되어 있다" << endl;
	else cout << "100이 배열 x에 포함되어 있지 않다" << endl;
}

 

4. 설명

 

 

함수가 실행되면 size만큼 for문을 돌려서 찾는 원소가 있는지 비교합니다.

 

위 x에서 100이 아닌 다른 원소를 입력하면 포함되어 있지 않다는 결과가 나오게 됩니다.

 

+ Recent posts