Ok, so I have done the 'mathematical part' just I am not sure where to put them in and how to get them to return answers.
public class Main {
public static void main(String[] args) {
}
//Part A.
//1&2- Computes the sum andproduct of all of the elements of the array a.
public function SumAndProduct()
{
var arr:Array = [1, 2, 3, 4, 5];
var sum:int = 0;
var prod:int = 1;
for (var i:int = 0; i < arr.length; i++)
{
sum += arr;
prod *= arr;
}
trace("Sum: " + sum); // 15
trace("Product: " + prod); // 120
}
}
//4- Finds the maximum value of the elements of the array.
var x=new Array(3,4,5,6);
var j=0;
for(i=0;i<x.length;i++)
{
if(x>x[j])
j=i;
}
alert(x[j]);
//5- Computes the average value of the array elements.
double nums[]={1.0,2.3,3.4,4.5,40.5};
double result=0.0;
for(i=0; i < nums.length; i++){
result = result + nums;
}
System.out.println("Average is =" + result/nums.length);
}
//Part B.
//1- Adding and subtracting each successive term.
public static int alterningSum (int[] a){
for (int i = 0; i < a.length; i++){
p += a;
i++;
}
for (int j = 1; j < a.length; j++){
m -= a[j];
j++;
}
}
//2- Returns the variance of the elements in the array.
public static double variance(double[] a){
double avg = average(a);
double acc = 0.0;
double var = 0.0;
for (int i = 0; i < a.length; i++ ){
acc += Math.pow (( a - avg ), 2.0);
}
var = acc / (double) a.length;
return var;
}
//3- Returns the number that occurs most frequently.
public static int mode(int[] a){
int[] freq = frequence(a);
int l = 0;
int m = 0;
int max = freq[0];
for (int i = 0; i < freq.length; i++){
if (freq > max){
max = freq;
l = i;
}
}
}
//Part C.
//1- Scales each element of the array by multiplying it by factor.
public static void scale(int[]a, int factor){
for (int i = 0; i < a.length; i++){
a *= factor;
}
}
//2- Exchanges the elements a and a[j].
public static void swap(int[] a, int i, int j){
System.out.println("Swap array :");
if ( i < ( a.length - 1) && j < ( a.length - 1 ) ){
a = a[j];
a[j] = a;
}
}
//3- Replaces each element i of the array with the cumulative sum of the elements a[0], a[1], ... , a.
public static void cumulate(int[] a){
System.out.println("Cumulate array :");
int temp = 0;
for (int i = 0; i < a.length; i++){
temp += a;
a = temp;
}
}
//Part E.
//1- Returns an array containing the first n squares starting from 0.
public static int[] squares(int n){
int[] res = new int[n + 1];
for (int k = 0; k < res.length; k++){
res [k] = k;
res[k] *= res[k];
}
return res;
}
I'd appreciate if someone could help me with:
double maxProfit\(double[] prices\)
Suppose that the array prices contains the daily share price for a number of days. This method calculates the maximum possible profit that you could have made on this share if you had bought it on one of the days, and sold it on one of the later days.
For example, suppose the prices are {10.80, 11.00, 10.50, 12.00, 14.00, 13.00}. Then if you have bought on day 0 and sold on day 5, you would have made $2.20. But if you bought on day 2 and sold on day 4 you would have made $3.50.
Not sure how to do this one, but I think that there's a need of loops.
(New to java, but know some knowledge from perl which helped me here)
~H