PLEASE, IS THERE ANY BODY (COMPUTER SCIENCE STUDENT/GRADUATE/PROGRAMMER) OUT THERE THAT CAN EXPLAIN THIS TO ME?PLEASE, IF THERE IS ANY,DO LET ME KNOW.I DONT MIND TIPPING YOU. IT IS URGENT.I NEED TO WRITE A SIMILAR EXAM. THANKS

[email protected] 08036555388/08055154145

1. Write a function that accepts an array of non-negative integers and returns the second largest integer in the array. Return -1 if there is no second largest.
If you are programming in Java or C#, the signature of the function is
int f(int[ ] a)

If you are programming in C or C#, the signature of the function is
int f(int a[ ], int len) where len is the number of elements in a.
Examples:
if the input array is return
{1, 2, 3, 4} 3
{{4, 1, 2, 3}} 3
{1, 1, 2, 2} 1
{1, 1} -1
{1} -1
{} -1




2. Write a function that takes an array of integers as an argument and returns a value based on the sums of the even and odd numbers in the array. Let X = the sum of the odd numbers in the array and let Y = the sum of the even numbers. The function should return X - Y
If you are using Java or C#, the signature of the function is:
int f(int[ ] a)
If you are using C or C++, the signature of the function is:
int f(int[ ] a, int len) where len is the number of elements in a.
Examples
if input array is return
{1} 1
{1, 2} -1
{1, 2, 3} 2
{1, 2, 3, 4} -2
{3, 3, 4, 4} -2
{3, 2, 3, 4} 0
{4, 1, 2, 3} -2
{1, 1} 2
{} 0



3. Write a function that accepts a character array, a zero-based start position and a length. It should return a character array containing containing length characters starting with the start character of the input array. The function should do error checking on the start position and the length and return null if the either value is not legal.
If you are programming in Java or C#, the function signature is:
char[ ] f(char[ ] a, int start, int len)
If you are programming in C or C++, the function signature is:
char * f(char a[ ], int start, int len, int lenA) where lenA is the number of elements in a.
Examples
if input parameters are return
{'a', 'b', 'c'}, 0, 4 null
{'a', 'b', 'c'}, 0, 3 {'a', 'b', 'c'}
{'a', 'b', 'c'}, 0, 2 {'a', 'b'}
{'a', 'b', 'c'}, 0, 1 {'a'}
{'a', 'b', 'c'}, 1, 3 null
{'a', 'b', 'c'}, 1, 2 {'b', 'c'}
{'a', 'b', 'c'}, 1, 1 {'b'}
{'a', 'b', 'c'}, 2, 2 null
{'a', 'b', 'c'}, 2, 1 {'c'}
{'a', 'b', 'c'}, 3, 1 null
{'a', 'b', 'c'}, 1, 0 {}
{'a', 'b', 'c'}, -1, 2 null
{'a', 'b', 'c'}, -1, -2 null
{}, 0, 1 null


Answers


First answer
public static void main()
{
a1(new int[]{1, 2, 3, 4});
a1(new int[]{4, 1, 2, 3});
a1(new int[]{1, 1, 2, 2});
a1(new int[]{1, 1});
a1(new int[]{1});
a1(new int[]{});
}

static int a1(int[] a)
{
int max1 = -1;
int max2 = -1;

for (int i=0; i<a.length; i++)
{
if (a[i] > max1)
{
max2 = max1;
max1 = a[i];
}
else if (a[i] != max1 && a[i] > max2)
max2 = a[i];
}

return max2;
}


Second answer
public static void main()
{
a2(new int&#91;] {1});
a2(new int&#91;] {1, 2});
a2(new int&#91;] {1, 2, 3});
a2(new int&#91;] {1, 2, 3, 4});
a2(new int&#91;] {3, 3, 4, 4});
a2(new int&#91;] {3, 2, 3, 4});
a2(new int&#91;] {4, 1, 2, 3});
a2(new int&#91;] {1, 1});
a2(new int&#91;] {});
}

static int a2(int&#91;] a)
{
int sumEven = 0;
int sumOdd = 0;

for (int i=0; i<a.length; i++)
{
if (a[i]%2 == 0)
sumEven += a[i];
else
sumOdd += a[i];
}

return sumOdd - sumEven;
}


Third answer
public static void main()
{
a3(new char&#91;]{'a', 'b', 'c'}, 0, 4);
a3(new char&#91;]{'a', 'b', 'c'}, 0, 3);
a3(new char&#91;]{'a', 'b', 'c'}, 0, 2);
a3(new char&#91;]{'a', 'b', 'c'}, 0, 1);
a3(new char&#91;]{'a', 'b', 'c'}, 1, 3);
a3(new char&#91;]{'a', 'b', 'c'}, 1, 2);
a3(new char&#91;]{'a', 'b', 'c'}, 1, 1);
a3(new char&#91;]{'a', 'b', 'c'}, 2, 2);
a3(new char&#91;]{'a', 'b', 'c'}, 2, 1);
a3(new char&#91;]{'a', 'b', 'c'}, 3, 1);
a3(new char&#91;]{'a', 'b', 'c'}, 1, 0);
a3(new char&#91;]{}, 0, 1);
a3(new char&#91;]{'a', 'b', 'c'}, -1, 2);
a3(new char&#91;]{'a', 'b', 'c'}, -1, -2);
}

static char&#91;] a3(char&#91;] a, int start, int length)
{
if (length < 0 || start < 0 || start+length-1>=a.length)
{
return null;
}

char&#91;] sub = new char[length];
for (int i=start, j=0; j<length; i++, j++)
{
sub[j] = a[i];
}

return sub;
}