소개글
알고리즘 수업 중 발생한 이진탐색 프로그램 과제 입니다.
프로그램 소스 첨부 되어 있습니다.
공부하는데 많은 도움 되면 좋겠습니다.
목차
없음
본문내용
1. 이진 탐색 프로그램을 작성하세요. 단 탐색 과정 중 비교횟수를 출력하고 주어진 배열에 없는 원소의
검색 시 “존재하지 않습니다.” 라고 출력하세요.
1차원 배열 X = [5 20 23 28 30 35 38 42 50 58 59 63 68]이고, 검색할 원소는 20, 59, 70으로 TEST하여 출력 결과를 제출하세요.
#include<stdio.h>
void serch(int number, int low, int high, int middle);
int x[13] = {5, 20, 23, 28, 30, 35, 38, 42, 50, 58, 59, 63, 68};
int count = 1;
void main()
{
int low = 0, high = 12, number, middle;
int a;
while(1)
{
printf("\n1. 원소 검색 2. 작업 종료 \n");
printf("작업 번호 : ");
scanf("%d", &a);
switch(a)
{
case 1 :
printf("검색할 원소 : ");
scanf("%d", &number);
serch(number, low, high, middle);
break;
case 2:
exit(0);
}
}
}
void serch(int number, int low, int high, int middle)
{
int left_low, right_low, left_high, right_high;
middle = (low + high) / 2;
참고 자료
없음