Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.08.2011, 13:49   #1
turtles
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 59
По умолчанию указание интервала

дравствуйте!!!Подскажите как можно указать интервал например вот такой (25;100) чтоб случайное число из любого отрезка по падала в этот интервал или не по падала? Как производится указания или объявления интервала?
turtles вне форума Ответить с цитированием
Старый 29.08.2011, 14:44   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

о.. вижу, что в прошлый раз Вы тему для себя до конца не разъяснили..

Ладно, попробуем ещё раз.

Задача, нужно получить такое случайное число, чтобы оно попадало в интервал от 25 до 100, включая границы!

1) вычисляем количество элементов:
100-25+1 = 76
2) сдвиг от нуля составит левую величину границы - т.е. 25

итак, конечная формула:
random(76) + 25

Это для целых чисел.


для вещественных:
ОкруглитьДоЗаданногоЧислаЗнаковПосл еЗапятой(random()*76) + 25
если использовать упрощённую формулу:
random()*76) + 25
то в этом случае крайнее правое значение (в данном случае: 100) НИКОГДА получено не будет - random() возвращает число от нуля до 1 (единица НЕ ВХОДИТ).
Serge_Bliznykov вне форума Ответить с цитированием
Старый 29.08.2011, 14:49   #3
X@OC
Форумчанин
 
Аватар для X@OC
 
Регистрация: 18.06.2010
Сообщений: 273
Хорошо

если я понял правильно то это делается так

здесь в интервале (-10,10)
вводите число и он показывает куда это число попадает а куда нет
Код:
import java.util.Scanner;

public class Switch {

	public static void main(String[] args)
		{
		Scanner in = new Scanner(System.in);
		int k = in.nextInt();
switch(k)
			{
case 0: {
	System.out.print("[-10, 5]");	
	}break;
case 1:
case 2:
case 3: 
case 4: 
case 5: {
	System.out.print("(0, 5]");
		}break;
case 6: 
case 7:
case 8: 
case 9: 
case 10: {
	System.out.print("(5, 10]");
		}break;
default: {if(k>0){System.out.print("(10, "+10*k+"]");} else {System.out.print("("+(-10*-k)+", 0]");}} break;
			}
		}
	
}
X@OC вне форума Ответить с цитированием
Старый 31.08.2011, 07:21   #4
turtles
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 59
По умолчанию

Огромное спасибо что разъяснили все подобробно!
turtles вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Указание диапазонов при обращении к функции Parabellum Microsoft Office Excel 16 22.01.2011 23:59
Указание пути Database/Explore NuR1k БД в Delphi 1 20.08.2010 16:56
Указание слоя окна программы kakawkin Win Api 4 11.10.2009 12:10
получает указание сервер из браузера toxich Работа с сетью в Delphi 7 18.09.2009 15:29
Указание пути к библиотекам _SERGEYX_ Общие вопросы Delphi 2 24.07.2007 09:35