Posts

Showing posts from January, 2019

search element in a circular sorted array

int main() { int A[] = {12,14,18,21,3,6,8,9}; int n = 8; int x = 6; int index = binarySearch(A,n,x); if(index == -1){   printf("%d not found in the array",x); } else{   printf("%d is found at index %d",x,index); } return 0; } int binarySearch(int A[],int n, int x){ int low = 0,high = n-1; while(low <= high){ int  mid = (low + high)/2;   if(x == A[mid])       return mid;         if(A[mid]<=A[high]){     if(x>A[mid] && x<=A[high])       low = mid+1;     else       high = mid-1;}   else{     if(x>=A[low] && x <A[mid])       high = mid-1;     else       low = mid+1;}   }     return -1; }    

Finding first or last occurrence of an element in array

#include <stdio.h> int main() { int A[] = {2,2,6,8,10,11}; int x = 2; int n = 6; int result = -1; int index = binarySearch(A,n,x); if(index == -1) {   printf("%d is not found at index %d",x,index); } else {   printf("%d is found at index %d",x,index); }   return 0;  } int binarySearch(int A[],int n,int x){   int start = 0, end = n-1, option,result = -1;   printf("Choose option:1 for first occurrence \nChoose option:2 for last occurrence\n");   printf("Enter any option to find first or last occurrence of an element:");     scanf("%d",&option);   while(start <= end){     int mid = (start + end)/2;         if(option == 1){     if(x == A[mid]){       result = mid;       end = mid-1;     }     else if(x < A[mid]){       end = mid-1;     }     else{       ...

Binary search

int main() { int A[] = {2,4,6,8,10,11}; int x = 4; int n = 6; int index = binarySearch(A,n,x); if(index == -1) {   printf("%d is not found at index %d",x,index); } else {   printf("%d is found at index %d",x,index); }   return 0;  } int binarySearch(int A[],int n,int x){   int start = 0, end = n-1;   while(start <= end){     int mid = (start + end)/2;     if(x == A[mid]){       return mid;     }     else if(x < A[mid]){       end = mid-1;     }     else{       start = mid+1;     }   }   return -1; }

Adding Negative numbers without using plus operator

int main() { int x = -1, y = -4; while(y!=0) {     x--;     y++;     }     printf("%d",x);     return 0; } output: -5

Adding two numbers without using plus(+) operator

int main() { int x = 3 , y = 4; while(y){   x++;   y--; } printf("%d",x);     return 0; } output: 7

Program to know the range of short unsigned integer

/* Program to know the range of short unsigned integer*/ #include <stdio.h> #include <limits.h> int main() { short int var1 = 0; short int var2 = USHRT_MAX; printf("range of short unsigned integer is from %u to %u",var1,var2);   return 0; }

Program to know the range of short signed integer

/* Program to know the range of short signed integer*/ #include <stdio.h> #include <limits.h> int main() { short int var1 = SHRT_MIN; short int var2 = SHRT_MAX; printf("range of short signed integer is from %d to %d",var1,var2);   return 0; }

Program to know the range of unsigned integer

/* Program to know the range of unsigned integer*/ #include <stdio.h> #include <limits.h> int main() { int var1 = 0; int var2 = UINT_MAX; printf("range of unsigned integer is from %u  to %u",var1,var2);   return 0; }

Program to know the range of signed integer

/* Program to know the range of signed integer*/ #include <stdio.h> #include <limits.h> int main() { int var1 = INT_MIN; int var2 = INT_MAX; printf("range of signed integer is from %d to %d",var1,var2);   return 0; }