import java.util.Arrays; // Importing used class only
public class Main {
/**
* Calculates the average of given integer array.
* @param Numbers Array of integers to calculate
* @return {int} Rounded average of all numbers on the array
*/
public static int IntAverage(int[] Numbers) {
double Result = 0; // Initializing with a value
// Decrescent loop is a little bit faster
for (int Index = Numbers.length - 1, Limit = - 1; Index > Limit; Index--) {
Result += Numbers[Index];
}
// Typecast already rounds number
return (int) (Result / Numbers.length);
}
public static void main
(String[] args
) { int[] TestValues = {2, 3, 5, 7, 11, 13, 17, 19, 23}; // Pre-defined test values
// Printing output to console
System.
out.
println("Numbers: " + Arrays.
toString(TestValues
)); System.
out.
println("Average: " + IntAverage
(TestValues
)); System.
out.
println(); // Empty line after execution }
}
aW1wb3J0IGphdmEudXRpbC5BcnJheXM7IC8vIEltcG9ydGluZyB1c2VkIGNsYXNzIG9ubHkKCnB1YmxpYyBjbGFzcyBNYWluIHsKICAgIC8qKgogICAgICogQ2FsY3VsYXRlcyB0aGUgYXZlcmFnZSBvZiBnaXZlbiBpbnRlZ2VyIGFycmF5LgogICAgICogQHBhcmFtIE51bWJlcnMgQXJyYXkgb2YgaW50ZWdlcnMgdG8gY2FsY3VsYXRlCiAgICAgKiBAcmV0dXJuIHtpbnR9IFJvdW5kZWQgYXZlcmFnZSBvZiBhbGwgbnVtYmVycyBvbiB0aGUgYXJyYXkKICAgICAqLwogICAgcHVibGljIHN0YXRpYyBpbnQgSW50QXZlcmFnZShpbnRbXSBOdW1iZXJzKSB7CiAgICAgICAgZG91YmxlIFJlc3VsdCA9IDA7IC8vIEluaXRpYWxpemluZyB3aXRoIGEgdmFsdWUKICAgICAgICAvLyBEZWNyZXNjZW50IGxvb3AgaXMgYSBsaXR0bGUgYml0IGZhc3RlcgogICAgICAgIGZvciAoaW50IEluZGV4ID0gTnVtYmVycy5sZW5ndGggLSAxLCBMaW1pdCA9IC0gMTsgSW5kZXggPiBMaW1pdDsgSW5kZXgtLSkgewogICAgICAgICAgICBSZXN1bHQgKz0gTnVtYmVyc1tJbmRleF07CiAgICAgICAgfQogICAgICAgIC8vIFR5cGVjYXN0IGFscmVhZHkgcm91bmRzIG51bWJlcgogICAgICAgIHJldHVybiAoaW50KSAoUmVzdWx0IC8gTnVtYmVycy5sZW5ndGgpOyAKICAgIH0KICAgIAogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIGludFtdIFRlc3RWYWx1ZXMgPSB7MiwgMywgNSwgNywgMTEsIDEzLCAxNywgMTksIDIzfTsgLy8gUHJlLWRlZmluZWQgdGVzdCB2YWx1ZXMKICAgICAgICAvLyBQcmludGluZyBvdXRwdXQgdG8gY29uc29sZQogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiTnVtYmVyczogIiArIEFycmF5cy50b1N0cmluZyhUZXN0VmFsdWVzKSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJBdmVyYWdlOiAiICsgSW50QXZlcmFnZShUZXN0VmFsdWVzKSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCk7IC8vIEVtcHR5IGxpbmUgYWZ0ZXIgZXhlY3V0aW9uCiAgICB9Cn0=