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

Диапазон случайных чисел - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
hatter
1 / 1 / 0
Регистрация: 01.09.2010
Сообщений: 134
19.04.2011, 19:59     Диапазон случайных чисел #1
Написал программку-угадайку случайного числа. Но возник вопрос.
Использую функцию rand() и она все время за случайное держит 41.
А мне хочется установить диапазон из которого выбирается случайное число(ну допустим от 1 до 15)
и чтобы каждый раз при запуске это число менялось.
Не подскажите как сделать?
Тут на форуме есть тема про генератор случайных чисел, но там он довольно объемный, может покороче есть способ?
Код программки :

#include "stdafx.h"
#include <iostream>

using namespace std;

int main()
{
setlocale(0,"");
int magic;
int guess;

magic = rand();

do { cout << "Введите свое число: ";
cin >> guess;
if(guess==magic)
{
cout << "В точку! \n";
cout << magic << " и есть нужное число";
}
else
{
cout<< "Промах!! \n \n";
if(guess>magic) cout << "Нужное число меньше, чем ваше, попытаемся еще раз\n \n";
else cout << "Ваше число меньше нужного, попытайтесь снова\n \n";
}
} while(guess!=magic);

getchar();
getchar();

return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.04.2011, 19:59     Диапазон случайных чисел
Посмотрите здесь:

Как указать диапазон генерации случайных чисел? C++
C++ Записать в файл f N целых чисел, полученных с помощью генератора случайных чисел.
C++ Сформировать одномерный массив целых чисел, используя датчик случайных чисел.
Сформировать одномерный массив целых чисел, используя датчик случайных чисел C++
C++ Массивы. Найти среднее арифметическое отрицательных чисел и подсчитать количество чисел, входящих в диапазон
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Oleg462
31 / 30 / 3
Регистрация: 18.01.2010
Сообщений: 123
19.04.2011, 20:02     Диапазон случайных чисел #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include "stdafx.h"
#include <iostream>
 
using namespace std;
 
int main()
{
randomize() ;
setlocale(0,"");
int magic;
int guess;
 
magic = random(15);
 
do { cout << "Введите свое число: ";
cin >> guess;
if(guess==magic)
{
cout << "В точку! \n";
cout << magic << " и есть нужное число";
}
else
{
cout<< "Промах!! \n \n";
if(guess>magic) cout << "Нужное число меньше, чем ваше, попытаемся еще раз\n \n";
else cout << "Ваше число меньше нужного, попытайтесь снова\n \n";
}
} while(guess!=magic);
 
getchar();
getchar();
 
return 0;
}
попробуй так
hatter
1 / 1 / 0
Регистрация: 01.09.2010
Сообщений: 134
19.04.2011, 22:09  [ТС]     Диапазон случайных чисел #3
не выходит, пишет что randomize и random - не объявленные идентификаторы
prazuber
108 / 108 / 3
Регистрация: 29.04.2010
Сообщений: 240
19.04.2011, 23:19     Диапазон случайных чисел #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
int main()
{
    srand(clock());
    setlocale(0,"");
    int magic;
    int guess;
 
    magic = rand()%15;
 
    do { 
        cout << "Введите свое число: ";
        cin >> guess;
        if (guess==magic)
        {
            cout << "В точку! \n";
            cout << magic << " и есть нужное число \n";
        }
        else
        {
            cout<< "Промах!! \n \n";
            if(guess>magic) cout << "Нужное число меньше, чем ваше, попытаемся еще раз\n \n";
            else cout << "Ваше число меньше нужного, попытайтесь снова\n \n";
        }
    } while(guess!=magic);
 
    system("pause");
    return 0;
}
rand()%15 меняется от 0 до 14.
Yandex
Объявления
19.04.2011, 23:19     Диапазон случайных чисел
Ответ Создать тему
Опции темы

Текущее время: 20:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru