Advertisement
Guest User

Untitled

a guest
Mar 22nd, 2019
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.49 KB | None | 0 0
  1. #include <stdio.h>
  2. void isort(int *arr , int n){
  3. int i = 1,
  4. pos = 0,
  5. v = 0;
  6. while(i < n){
  7. v = arr[i];
  8. pos = i;
  9. while(pos > 0 && arr[pos-1] > v){
  10. arr[pos] = arr[pos-1];
  11. --pos;
  12. }
  13. arr[pos] = v;
  14. ++i;
  15. }
  16. }
  17. int binary_search(int *arr , int el , int left , int right){
  18. if(left > right)
  19. return -1;
  20. int mid = (left + right)/2;
  21. if(arr[mid] == el){
  22. return mid;
  23. }else if(arr[mid] > el){
  24. return binary_search(arr,el,left , mid-1);
  25. }
  26. return binary_search(arr,el,mid+1,right);
  27. }
  28. void main(){
  29. int a[100];
  30. int i,n = 0;
  31. int pos = 0;
  32. int el = 0;
  33.  
  34. printf("Enter the upper limit: ");
  35. scanf("%d" , &n);
  36. for(i=0;i<n;++i){
  37. printf("Enter value[%d]: " , i+1);
  38. scanf("%d" , a + i);
  39. }
  40. isort(a , n);
  41. printf("Sorted Array: ");
  42. for(i=0;i<n-1;++i){
  43. printf(" [%d]( %d ) , " , i+1 , a[i]);
  44. }
  45. printf(" [%d]( %d ) .\n\n" , i+1 , a[i]);
  46. printf("Enter element to search: ");
  47. scanf("%d" , &el);
  48. if((pos = binary_search(a , el , 0 , n)) < 0){
  49. printf("Element not found in the array.\n");
  50. return;
  51. }
  52. printf("Element found at position %d.\n" , pos+1);
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement