#include int arrC[10] = {0}; int bSearch(int arr[], int l, int h, int key); int *joinArray(int arrA[], int arrB[]) { int j = 0; if ((arrB[0] + arrB[4]) % 5 == 0) { arrB[0] = 0; arrB[4] = 0; } for (int i = 0; i < 5; i++) { arrC[j++] = arrA[i]; if (arrB[i] == 0 || (bSearch(arrA, 0, 5, arrB[i]) != -1)) { continue; } else arrC[j++] = arrB[i]; } for (int i = 0; i < j; i++) { int temp; for (int k = i + 1; k < j; k++) { if (arrC[i] > arrC[k]) { temp = arrC[i]; arrC[i] = arrC[k]; arrC[k] = temp; } } } for (int i = 0; i < j; i++) { printf("%d ", arrC[i]); } return arrC; } int bSearch(int arr[], int l, int h, int key) { if (h >= l) { int mid = l + (h - l) / 2; if (arr[mid] == key) return mid; if (arr[mid] > key) return bSearch(arr, l, mid - 1, key); return bSearch(arr, mid + 1, h, key); } return -1; } Make a flowchart handwritten Make a flowchart to describe your algorithm (free tools, you can also write by hand and then take a photo).
#include <stdio.h>
int arrC[10] = {0};
int bSearch(int arr[], int l, int h, int key);
int *joinArray(int arrA[], int arrB[])
{
int j = 0;
if ((arrB[0] + arrB[4]) % 5 == 0)
{
arrB[0] = 0;
arrB[4] = 0;
}
for (int i = 0; i < 5; i++)
{
arrC[j++] = arrA[i];
if (arrB[i] == 0 || (bSearch(arrA, 0, 5, arrB[i]) != -1))
{
continue;
}
else
arrC[j++] = arrB[i];
}
for (int i = 0; i < j; i++)
{
int temp;
for (int k = i + 1; k < j; k++)
{
if (arrC[i] > arrC[k])
{
temp = arrC[i];
arrC[i] = arrC[k];
arrC[k] = temp;
}
}
}
for (int i = 0; i < j; i++)
{
printf("%d ", arrC[i]);
}
return arrC;
}
int bSearch(int arr[], int l, int h, int key)
{
if (h >= l)
{
int mid = l + (h - l) / 2;
if (arr[mid] == key)
return mid;
if (arr[mid] > key)
return bSearch(arr, l, mid - 1, key);
return bSearch(arr, mid + 1, h, key);
}
return -1;
}
Make a flowchart handwritten
Make a flowchart to describe your
Trending now
This is a popular solution!
Step by step
Solved in 2 steps with 2 images