Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 67, средняя оценка - 4.96
velodro
72 / 1 / 1
Регистрация: 28.11.2009
Сообщений: 78
#1

rand в диапазоне... - C++

27.07.2010, 17:13. Просмотров 10412. Ответов 5
Метки нет (Все метки)

не удаётся rand в диапазоне, так чтобы значения при каждой прогонке значения менялись.
к примеру - число из диапазона.
мой первый вариант.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <time.h>
#include <stdlib.h>
using namespace std;
 
int main()
{
    int shot;
    srand(time(NULL));
    shot=1+(10-1)*rand()/RAND_MAX;
    cout<<shot;
    return 0;
}
мой второй вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <time.h>
#include <stdlib.h>
#include <stdio.h>
using namespace std;
 
int main()
{
    int shot;
        srand( (unsigned)time( NULL ) );
    shot=1+(10-1)*rand()/RAND_MAX;
    cout<<shot;
    return 0;
}
не меняют числа оба варианта, если не делить на RAND_MAX.
Подскажите как.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.07.2010, 17:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос rand в диапазоне... (C++):

rand - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;cstdlib&gt; // гениратор случайных чисел using namespace std; ...

rand() - C++
начал учить си++, наткнулся на такую штуку... Накидал простую программку (консольную) и увидел что датчик случ. чисел выдает нифига...

rand - C++
всем привет) что означает вот это строка double value = (rand()%1000)/100.0 - 5.0; и чем она отличается от этой double value =...

Rand() - C++
metka: r1=rand()%2; r2=rand()%2; if(r1==a &amp;&amp; r2==b)goto metka; else arr=='O'; Собсно-это кусок кода...

Rand() - C++
Ребята срочно nомогите , как сгенерировать с nомощью функции rand() рандомные числа 0 или 1 ?

rand от 1 до 16 - C++
Вопрос в том как в функции rand() на c++ задать диапазон чисел от 1 до 16

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
27.07.2010, 17:16 #2
Например

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
 
int main()
{
        int shot;
        srand(time(NULL));
        shot=1+rand()%(10-1);
        cout<<shot;
        return 0;
}
0
velodro
72 / 1 / 1
Регистрация: 28.11.2009
Сообщений: 78
27.07.2010, 17:18  [ТС] #3
это что будет из диапазона?
0
CyBOSSeR
Эксперт C++
2302 / 1672 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
27.07.2010, 17:20 #4
velodro, а теперь без запинок русским языком объясни что тебе нужно сделать. Генерировать случайные числа из заданного диапазона? Если так:
C++
1
int n = min + rand() % (max - min); // n будет принадлежать диапазону [min, max)
2
MikeSoft
Эксперт С++
3799 / 1775 / 85
Регистрация: 21.11.2009
Сообщений: 2,540
27.07.2010, 17:27 #5
velodro, недавно была тема о генерации случайных чисел: Генерация случайных чисел (rand () % 6)
0
velodro
72 / 1 / 1
Регистрация: 28.11.2009
Сообщений: 78
27.07.2010, 17:28  [ТС] #6
извеняюсь за карявость сооющения.. изменял.. и не прочитал, прежде чем,опубликовать..

спаисибо всем!

CyBOSSeR дал верный способ и правильно меня понял!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.07.2010, 17:28
Привет! Вот еще темы с ответами:

rand - C++
srand(time(NULL)); int s = rand()%1000 +1; генерирует бред вроде 3,4,7,10,14,19,21,26,29... как сделать чтобы значения были...

rand()%(-20)%(20); - C++
Нужно сорт случ числа от -20 до 20 Делаю так rand()%(-20)%(20); получаю числа от 0 до 20, а мне нужно от -20 ;

rand() - C++
Как записать чтобы rand() возвращало true и false. Или подскажите другой способ. Мне нужно заполнить 3-х мерный массив.

rand() - C++
генератор случайных чисел rand() подскажите пожелуста как работает ета штука. что означает %200, %200-100. какой принцип роботы


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
27.07.2010, 17:28
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru