import java.util.Arrays;
public class Main {
public static void main(String[] args) {
// Constant K
final int K = 10;
// Generate array of random integers
int[] arr = new int[100];
for (int i = 0; i < arr.length; i++) {
arr[i] = (int) (Math.random() * K);
}
// Count prime numbers and multiples of 3
int countPrime = 0;
int countMultiplesOf3 = 0;
for (int i = 0; i < arr.length; i++) {
if (isPrime(arr[i])) {
countPrime++;
}
if (arr[i] % 3 == 0) {
countMultiplesOf3++;
}
}
// Sort array
Arrays.sort(arr);
// Print results
System.out.println("Number of prime numbers: " + countPrime);
System.out.println("Number of multiples of 3: " + countMultiplesOf3);
System.out.println("Sorted array: " + Arrays.toString(arr));
}
// Method to check if a number is prime
public static boolean isPrime(int n) {
if (n <= 1) {
return false;
}
for (int i = 2; i <= Math.sqrt(n); i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
}
Можно для выполнения использовать метод random класса java.lang.Math и класс Arrays.
Мой код:
import java.util.Random;
import java.util.Scanner; // импорт сканера
import static java.lang.Math.max;
class Main {
public static void main(String args[]) {
Scanner input= new Scanner( System.in );
System.out.println("Enter K: ");
int k = input.nextInt(); //считывает и присваивает значение в k
int[] randomArray = createRandomArray(k);
}
public static int[] createRandomArray(int upperBound) {
Random random = new Random();
int[] arr = new int[Byte.MAX_VALUE + 1];
for (byte i = 0; i >= 0; i++) {
arr[i] = random.nextInt(upperBound);
}
return arr;
}
}
int res = 0;
mark1: for ( int i = 2; i <= K; i++ ) {
// for ( int j = i - 1; j != 1; j-- ) {
for ( int j = (int)Math.sqrt( i ); j != 1; j-- ) {
if ( i % j == 0 ) {
continue mark1;
}
}
res++;
}
System.out.println( res );//простые числа
}
Преподаватель пишет, нет кода для метода max().
Хотя бы подтолкните, что нужно исправить, добавить?