제목 : 가까운 값(근사값;NEAR) 알고리즘
    
    
        
            
                | 
                    글번호:
                 | 
                
                 | 
                
                    263
                 | 
            
            
                | 
                    작성자:
                 | 
                
                 | 
                
                    
                        레드플러스
                        
                        
                    
                 | 
            
            
                | 
                    작성일:
                 | 
                
                 | 
                
                    
                        2006/10/19 오전 2:17:07 
                    
                 | 
            
            
            
                | 
                    조회수:
                 | 
                
                 | 
                
                    
                        14234
                    
                 | 
            
            
        
     
 
    
	
	
    
	// 가까운값 : 차이의 최소값
#include <stdio.h>
#include <math.h>   // abs() : 절대값
#include <limits.h>    //INT_MAX : 정수형이 가질 수 있는 가장 큰 값 : +21억
void main(void)
{
    //[1] Init/Input
    //원본 데이터
    int intData[] = {33, 23, 22, 34, 36};
    //가까운값 알고리즘
    //타겟 데이터 : 주어진 값(이 값에 가장 가까운 데이터 검색)
    int intTargetData = 1;        
    int intDiff = 0;//차이값
    int intDiffMin = INT_MAX;//차이 최소값
    int intNear = 0;//가까운 값
    int i = 0;
    //[2] Process
    //가까운값(근사값;NEAR) 알고리즘 적용
    for(i = 0;i < 5;i++)
    {
        intDiff = intData[i] - intTargetData;
        if(abs(intDiffMin) > abs(intDiff))
        {
            intDiffMin = intDiff;
            intNear = intData[i];
        }
    }
    //[3] Output
    printf("원본 데이터 : \n");
    for(i = 0;i < 5;i++)
    {
        printf("%d ", intData[i]);
    }
    printf("\n%d와 가장 가까운 값 : %d\n"
        , intTargetData, intNear);
}