У меня есть массив, который может содержать 5 целых чисел. В цикле for я использую Math.random(), чтобы заполнить массив случайными целыми значениями от 0 до 10, которые могут быть положительными или отрицательными. Как я могу получить отрицательное значение? Кто-то рекомендовал мне умножить на -1 формулу, чтобы заполнить массив положительными и отрицательными значениями, но когда я делаю это, все мои значения в массиве отрицательные. Я думаю, что проблема в этой строкеКак получить случайное значение, которое может быть положительным или отрицательным?
int r = 0 + (int) (Math.random() * 10 *(-1));
Это код:
public class Random
{
public static void main(String [] args)
{
int [] arr= new int[5];
for(int k=0; k<arr.length; k++)
{
int r = 0 + (int) (Math.random() * 10 *(-1));
arr[k] = r;
}
int j = 0;
while(i<arr.length) {
System.out.print(arr[i] + " ");
j++;
}
}
}
Сейчас мой выход -7 -3 -3 -5 -6
Я хочу, чтобы мой выход был 7 -3 3 -5 6
Попробуйте 'обр [к] = г * ((Math. random()> 0.5)? 1: -1) ', чтобы добавить случайное значение к отрицательному/положительному. Или вы можете переместить диапазон случайного интервала (ответ Эрана) – Daniel