Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите с задачкой, Задача 
:(
    Опции темы
peulfay
  Дата 29.6.2008, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 29.6.2008

Репутация: нет
Всего: нет



 smile   
Есть язык джава. Если точнее - его мобильная реализация. J2ME. 
В этой реализации есть класс Random в котором есть метод nextInt() который возвращает случайное целое число в диапазоне -2147483648..2147483648.
А вот метода nextInt(int n) который возвращает случайное целое число в диапазоне 0..n в мобильной джаве - нет.
Вопрос - как получить целое случайное число от 0 до n?
 
как???
PM MAIL   Вверх
eugine_s
Дата 29.6.2008, 13:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 581
Регистрация: 14.11.2007
Где: Киев

Репутация: 17
Всего: 17



Код

public int nextInt(int n) {
return Math.abs(r.nextInt()) % n;
}

PM MAIL   Вверх
Majesty
Дата 30.6.2008, 08:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 98
Регистрация: 20.3.2005
Где: Almaty, Kazakhsta n

Репутация: нет
Всего: нет



Это на яваскрипте, портировать несложно:
Код
function getRand(min, max){
return Math.round(Math.random()*(max-min))+min;
}
Как вариант smile
PM MAIL WWW   Вверх
eugine_s
Дата 30.6.2008, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 581
Регистрация: 14.11.2007
Где: Киев

Репутация: 17
Всего: 17



Цитата(Majesty @  30.6.2008,  08:02 Найти цитируемый пост)
Как вариант smile


Как вариант, но он у тебя не правильный.

min = 1
max = 4

пусть random выдает значение = 1000

Результат getRand тогда будет:

(1000 * (4-1)) + 1 = 3001

Правильно будет вот так:

Код

function getRand(min, max){
return Math.round(Math.random()%(max-min))+min;
}

Но тогда я не вижу разницы от того что я написал.
PM MAIL   Вверх
Majesty
Дата 1.7.2008, 07:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 98
Регистрация: 20.3.2005
Где: Almaty, Kazakhsta n

Репутация: нет
Всего: нет



Цитата(eugine_s @  30.6.2008,  10:41 Найти цитируемый пост)
пусть random выдает значение = 1000
ну тут уже особенности языка. в javascript Math.random() возвращает float от 0 до 1 исключая границы smile

PM MAIL WWW   Вверх
eugine_s
Дата 1.7.2008, 09:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 581
Регистрация: 14.11.2007
Где: Киев

Репутация: 17
Всего: 17



Цитата(Majesty @  30.6.2008,  08:02 Найти цитируемый пост)
Это на яваскрипте, портировать несложно:


Может тогда спортируешь?

Цитата(Majesty @  1.7.2008,  07:00 Найти цитируемый пост)
ну тут уже особенности языка. в javascript Math.random() возвращает float от 0 до 1 исключая границы smile


Тогда еще больше не вижу смысла в этом примере.

В j2me в CLDC 1.0 - нет операций с плавающей точкой.

Они есть в CLDC 1.1, но в ней же уже есть Random.nextInt(int n);


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.0979 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.