diff --git a/client_server/client.c b/client_server/client.c index bd208362..a223478b 100644 --- a/client_server/client.c +++ b/client_server/client.c @@ -1,66 +1,71 @@ -// Write CPP code here -#include -#include -#include +// Write CPP code here +#include +#include +#include #include -#include -#include -#define MAX 80 -#define PORT 8080 -#define SA struct sockaddr -void func(int sockfd) -{ - char buff[MAX]; - int n; - for (;;) { - bzero(buff, sizeof(buff)); - printf("Enter the string : "); - n = 0; - while ((buff[n++] = getchar()) != '\n') - ; - write(sockfd, buff, sizeof(buff)); - bzero(buff, sizeof(buff)); - read(sockfd, buff, sizeof(buff)); - printf("From Server : %s", buff); - if ((strncmp(buff, "exit", 4)) == 0) { - printf("Client Exit...\n"); - break; - } - } -} - -int main() -{ - int sockfd, connfd; - struct sockaddr_in servaddr, cli; - - // socket create and varification - sockfd = socket(AF_INET, SOCK_STREAM, 0); - if (sockfd == -1) { - printf("socket creation failed...\n"); - exit(0); - } +#include +#include +#include +#define MAX 80 +#define PORT 8080 +#define SA struct sockaddr +void func(int sockfd) +{ + char buff[MAX]; + int n; + for (;;) + { + bzero(buff, sizeof(buff)); + printf("Enter the string : "); + n = 0; + while ((buff[n++] = getchar()) != '\n') + ; + write(sockfd, buff, sizeof(buff)); + bzero(buff, sizeof(buff)); + read(sockfd, buff, sizeof(buff)); + printf("From Server : %s", buff); + if ((strncmp(buff, "exit", 4)) == 0) + { + printf("Client Exit...\n"); + break; + } + } +} + +int main() +{ + int sockfd, connfd; + struct sockaddr_in servaddr, cli; + + // socket create and varification + sockfd = socket(AF_INET, SOCK_STREAM, 0); + if (sockfd == -1) + { + printf("socket creation failed...\n"); + exit(0); + } else - printf("Socket successfully created..\n"); - bzero(&servaddr, sizeof(servaddr)); - - // assign IP, PORT - servaddr.sin_family = AF_INET; - servaddr.sin_addr.s_addr = inet_addr("127.0.0.1"); - servaddr.sin_port = htons(PORT); - - // connect the client socket to server socket - if (connect(sockfd, (SA*)&servaddr, sizeof(servaddr)) != 0) { - printf("connection with the server failed...\n"); - exit(0); - } + printf("Socket successfully created..\n"); + bzero(&servaddr, sizeof(servaddr)); + + // assign IP, PORT + servaddr.sin_family = AF_INET; + servaddr.sin_addr.s_addr = inet_addr("127.0.0.1"); + servaddr.sin_port = htons(PORT); + + // connect the client socket to server socket + if (connect(sockfd, (SA *)&servaddr, sizeof(servaddr)) != 0) + { + printf("connection with the server failed...\n"); + exit(0); + } else - printf("connected to the server..\n"); - - // function for chat - func(sockfd); - - // close the socket - close(sockfd); -} + printf("connected to the server..\n"); + + // function for chat + func(sockfd); + + // close the socket + close(sockfd); +} diff --git a/conversions/decimal_to_octal_recursion.c b/conversions/decimal_to_octal_recursion.c index 0d588951..a4d21b72 100644 --- a/conversions/decimal_to_octal_recursion.c +++ b/conversions/decimal_to_octal_recursion.c @@ -5,24 +5,25 @@ #include int decimal_to_octal(int decimal) { - if( (decimal<8) && (decimal>0) ) + if ((decimal < 8) && (decimal > 0)) { return decimal; } - else if(decimal==0) + else if (decimal == 0) { return 0; } else { - return ( (decimal_to_octal(decimal/8)*10) + decimal%8 ); + return ((decimal_to_octal(decimal / 8) * 10) + decimal % 8); } } -void main() +int main() { - int octalNumber,decimalNumber; + int octalNumber, decimalNumber; printf("\nEnter your decimal number : "); - scanf("%d",&decimalNumber); + scanf("%d", &decimalNumber); octalNumber = decimal_to_octal(decimalNumber); - printf("\nThe octal of %d is : %d" ,decimalNumber,octalNumber); + printf("\nThe octal of %d is : %d", decimalNumber, octalNumber); + return 0; } diff --git a/misc/rselect.c b/misc/rselect.c index 9679bf00..af9be942 100644 --- a/misc/rselect.c +++ b/misc/rselect.c @@ -1,54 +1,77 @@ #include -#include -#include -void swap(int *a ,int *b) -{int t;t =*a;*a=*b;*b=t;} -int part(int a[],int l,int r,int n,int pivot,int pindex) -{int p1=l,p2=r; - while(p2>p1) +#include +#include +void swap(int *a, int *b) +{ + int t; + t = *a; + *a = *b; + *b = t; +} +int part(int a[], int l, int r, int n, int pivot, int pindex) +{ + int p1 = l, p2 = r; + while (p2 > p1) { - if (a[p1] > pivot && a[p2] pivot && a[p2] < pivot) + { + swap(&a[p1], &a[p2]); + } else { - if (a[p1] <=pivot) - {p1++;} - if (a[p2]>=pivot) - {p2--;} + if (a[p1] <= pivot) + { + p1++; + } + if (a[p2] >= pivot) + { + p2--; + } } } - swap(&a[pindex],&a[p2]); + swap(&a[pindex], &a[p2]); return p2; } -int rselect(int a[],int l,int r,int n,int o) +int rselect(int a[], int l, int r, int n, int o) { - int pivot,pindex,pactual; - if (r>l) + int pivot, pindex, pactual; + if (r > l) { - pindex = rand()%(r-l+1); - pivot = a[pindex]; - pactual = part(a,l,r,n,pivot,pindex); - - if (pactual == o) - {return a[pactual];} - - if (o < pactual) - {rselect(a,l,pactual-1,n,o);} - - if (o>pactual) - {rselect(a,pactual+1,r,n,o-pactual);} + pindex = rand() % (r - l + 1); + pivot = a[pindex]; + pactual = part(a, l, r, n, pivot, pindex); + + if (pactual == o) + { + return a[pactual]; + } + + if (o < pactual) + { + rselect(a, l, pactual - 1, n, o); + } + + if (o > pactual) + { + rselect(a, pactual + 1, r, n, o - pactual); + } } - if (r==l) - {return a[l];} + if (r == l) + { + return a[l]; + } + return -1; } int main() -{srand(time(NULL)); - int n,o,i,*a; - scanf("%d %d",&n,&o); - a = (int*)malloc(n*sizeof(int)); - for (i=0;i - +#include void strng(int a) { - int j=a; - int sum=0; - int b,i,fact=1; - while(a>0) + int j = a; + int sum = 0; + int b, i, fact = 1; + while (a > 0) { - fact=1; - b=a%10; - for(i=1;i<=b;i++) + fact = 1; + b = a % 10; + for (i = 1; i <= b; i++) { - fact=fact*i; + fact = fact * i; } - a=a/10; - sum=sum+fact; + a = a / 10; + sum = sum + fact; } - if(sum==j) - printf("%d is a strong number",j); + if (sum == j) + printf("%d is a strong number", j); else - printf("%d is not a strong number",j); + printf("%d is not a strong number", j); } -void main() +int main() { int a; printf("Enter the number to check"); - scanf("%d",&a); + scanf("%d", &a); strng(a); + return 0; } diff --git a/project_euler/Problem 03/sol1.c b/project_euler/Problem 03/sol1.c index 369ec72d..680b2882 100644 --- a/project_euler/Problem 03/sol1.c +++ b/project_euler/Problem 03/sol1.c @@ -6,47 +6,61 @@ e.g. for 10, largest prime factor = 5. For 17, largest prime factor = 17. #include #include -int isprime(int no) { +int isprime(int no) +{ int sq; - if (no == 2) { + if (no == 2) + { return 1; } - else if (no%2 == 0) { + else if (no % 2 == 0) + { return 0; } sq = ((int)(sqrt(no))) + 1; - for (int i = 3; i < sq; i + 2) { - if (no%i == 0) { + for (int i = 3; i < sq; i += 2) + { + if (no % i == 0) + { return 0; } } return 1; } -int main() { +int main() +{ int maxNumber = 0; int n = 0; int n1; scanf("%d", &n); if (isprime(n) == 1) printf("%d", n); - else { - while (n % 2 == 0) { + else + { + while (n % 2 == 0) + { n = n / 2; } - if (isprime(n) == 1) { + if (isprime(n) == 1) + { printf("%d\n", n); } - else { + else + { n1 = ((int)(sqrt(n))) + 1; - for (int i = 3; i < n1; i + 2) { - if (n%i == 0) { - if (isprime((int)(n / i)) == 1) { + for (int i = 3; i < n1; i += 2) + { + if (n % i == 0) + { + if (isprime((int)(n / i)) == 1) + { maxNumber = n / i; break; } - else if (isprime(i) == 1) { + else if (isprime(i) == 1) + { maxNumber = i; } } diff --git a/project_euler/Problem 05/sol.c b/project_euler/Problem 05/sol.c index 12599033..b3190d2e 100644 --- a/project_euler/Problem 05/sol.c +++ b/project_euler/Problem 05/sol.c @@ -1,28 +1,34 @@ #include -unsigned long gcd(unsigned long a, unsigned long b) { +unsigned long gcd(unsigned long a, unsigned long b) +{ unsigned long r; - if (a > b) { + if (a > b) + { unsigned long t = a; a = b; b = t; } - while (r = a % b) { + while ((r = (a % b))) + { a = b; b = r; } return b; } -unsigned long lcm(unsigned long a, unsigned long b) { +unsigned long lcm(unsigned long a, unsigned long b) +{ unsigned long long p = (unsigned long long)a * b; return p / gcd(a, b); } -int main(void) { +int main(void) +{ unsigned long ans = 1; unsigned long i; - for (i = 1; i <= 20; i++) { + for (i = 1; i <= 20; i++) + { ans = lcm(ans, i); } printf("%lu\n", ans); diff --git a/project_euler/Problem 14/sol1.c b/project_euler/Problem 14/sol1.c index e8af5ad6..aabbd60d 100644 --- a/project_euler/Problem 14/sol1.c +++ b/project_euler/Problem 14/sol1.c @@ -2,27 +2,24 @@ #include #ifdef _OPENMP - #include - #pragma message ("Using OpenMP parallelization") -#else - #pragma message ("Not using OpenMP parallelization") +#include #endif /** - * Computes the length of collatz sequence for a given - * starting number + * Computes the length of collatz sequence for a given + * starting number **/ long long collatz(long long start_num) { long long length = 1; - - while (start_num != 1) /* loop till we reach 1 */ + + while (start_num != 1) /* loop till we reach 1 */ { - if(start_num & 0x01) /* check for odd */ + if (start_num & 0x01) /* check for odd */ start_num = 3 * start_num + 1; else - start_num >>= 1; /* simpler divide by 2 */ - length ++; + start_num >>= 1; /* simpler divide by 2 */ + length++; } return length; @@ -33,39 +30,39 @@ int main(int argc, char **argv) long long max_len = 0, max_len_num = 0; long long MAX_NUM = 1000000; - if (argc == 2) /* set commandline argumnet as the maximum iteration number */ + if (argc == 2) /* set commandline argumnet as the maximum iteration number */ { MAX_NUM = atoll(argv[1]); printf("Maximum number: %lld\n", MAX_NUM); } - /** - * Since the computational values for each iteration step are independent, - * we can compute them in parallel. However, the maximum values should be +/** + * Since the computational values for each iteration step are independent, + * we can compute them in parallel. However, the maximum values should be * updated in synchrony so that we do not get into a "race condition". - * + * * To compile with supporintg gcc or clang, the flag "-fopenmp" should be passes * while with Microsoft C compiler, the flag "/fopenmp" should be used. - * + * * Automatically detects for OPENMP using the _OPENMP macro. **/ - #ifdef _OPENMP - #pragma omp parallel for shared(max_len, max_len_num) schedule(guided) - #endif +#ifdef _OPENMP +#pragma omp parallel for shared(max_len, max_len_num) schedule(guided) +#endif for (long long i = 1; i < MAX_NUM; i++) { long long L = collatz(i); if (L > max_len) { - max_len = L; /* length of sequence */ - max_len_num = i; /* starting number */ + max_len = L; /* length of sequence */ + max_len_num = i; /* starting number */ } - #if defined(_OPENMP) && defined(DEBUG) +#if defined(_OPENMP) && defined(DEBUG) printf("Thread: %2d\t %3lld: \t%5lld\n", omp_get_thread_num(), i, L); - #elif defined(DEBUG) +#elif defined(DEBUG) printf("%3lld: \t%5lld\n", i, L); - #endif +#endif } printf("Start: %3lld: \tLength: %5lld\n", max_len_num, max_len); diff --git a/searching/Linear_Search.c b/searching/Linear_Search.c index e507bb0c..5c85d697 100644 --- a/searching/Linear_Search.c +++ b/searching/Linear_Search.c @@ -1,27 +1,32 @@ #include -int linearsearch(int *arr, int size, int val){ +int linearsearch(int *arr, int size, int val) +{ int i; - for (i = 0; i < size; i++){ + for (i = 0; i < size; i++) + { if (arr[i] == val) return 1; } return 0; } -void main(){ - int n,i,v; +int main() +{ + int n, i, v; printf("Enter the size of the array:\n"); - scanf("%d",&n); //Taking input for the size of Array + scanf("%d", &n); //Taking input for the size of Array int a[n]; printf("Enter the contents for an array of size %d:\n", n); - for (i = 0; i < n; i++) scanf("%d", &a[i]);// accepts the values of array elements until the loop terminates// + for (i = 0; i < n; i++) + scanf("%d", &a[i]); // accepts the values of array elements until the loop terminates// printf("Enter the value to be searched:\n"); scanf("%d", &v); //Taking input the value to be searched - if (linearsearch(a,n,v)) + if (linearsearch(a, n, v)) printf("Value %d is in the array.\n", v); else printf("Value %d is not in the array.\n", v); + return 0; } diff --git a/searching/Other_Binary_Search.c b/searching/Other_Binary_Search.c index 3337ce19..85a65099 100644 --- a/searching/Other_Binary_Search.c +++ b/searching/Other_Binary_Search.c @@ -2,7 +2,6 @@ #include #define len 5 - int binarySearch(int array[], int leng, int searchX) { int pos = -1, right, left, i = 0; @@ -10,14 +9,14 @@ int binarySearch(int array[], int leng, int searchX) left = 0; right = leng - 1; - while(left <= right) + while (left <= right) { pos = left + (right - left) / 2; - if(array[pos] == searchX) + if (array[pos] == searchX) { return pos; } - else if(array[pos] > searchX) + else if (array[pos] > searchX) { right = pos - 1; } @@ -29,10 +28,9 @@ int binarySearch(int array[], int leng, int searchX) return -1; /* not found */ } - -void main(int argc, char *argv[]) +int main(int argc, char *argv[]) { - int array[len] = { 5, 8 , 10 , 14 ,16 }; + int array[len] = {5, 8, 10, 14, 16}; int position; position = binarySearch(array, len, 5); @@ -44,5 +42,5 @@ void main(int argc, char *argv[]) printf("The number %d exist in array at position : %d \n", 5, position); } - + return 0; } diff --git a/sorting/Stooge_Sort.c b/sorting/Stooge_Sort.c index 8b265adb..f7ef862f 100644 --- a/sorting/Stooge_Sort.c +++ b/sorting/Stooge_Sort.c @@ -1,24 +1,24 @@ #include -void stoogesort(int [], int, int); - -void main() +void stoogesort(int[], int, int); + +int main() { int arr[100], i, n; - + printf("How many elements do you want to sort: "); scanf("%d", &n); - for (i = 0;i < n; i++) + for (i = 0; i < n; i++) scanf(" %d", &arr[i]); stoogesort(arr, 0, n - 1); printf("Sorted array : \n"); - for (i = 0;i < n;i++) + for (i = 0; i < n; i++) { printf("%d ", arr[i]); } printf("\n"); + return 0; } - - + void stoogesort(int arr[], int i, int j) { int temp, k; diff --git a/sorting/multikey_quick_sort.c b/sorting/multikey_quick_sort.c index 7077aa53..685c1979 100644 --- a/sorting/multikey_quick_sort.c +++ b/sorting/multikey_quick_sort.c @@ -259,7 +259,7 @@ void insert2(char *s) Tptr pp, *p; p = &root; - while (pp = *p) + while (pp == *p) { if ((d = *s - pp->splitchar) == 0) { @@ -390,7 +390,6 @@ void nearsearch(Tptr p, char *s, int d) nearsearch(p->hikid, s, d); } - #define NUMBER_OF_STRING 3 int main(int argc, char *argv[])