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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
hatter
1 / 1 / 0
Регистрация: 01.09.2010
Сообщений: 136
#1

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

19.04.2011, 19:59. Просмотров 1557. Ответов 3
Метки нет (Все метки)

Написал программку-угадайку случайного числа. Но возник вопрос.
Использую функцию 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++
C++ Массивы. Найти среднее арифметическое отрицательных чисел и подсчитать количество чисел, входящих в диапазон
Запишите функцию для вычисления произведения целых чисел из диапазона от а до в. найдите произведение чисел, диапазон ввести с клавиатуры. В С++ C++
C++ Сформировать одномерный массив целых чисел, используя датчик случайных чисел
C++ Сформировать одномерный массив целых чисел, используя датчик случайных чисел
Сформировать одномерный массив целых чисел, используя датчик случайных чисел C++
C++ Запишите шесть строк, состоящих из двух случайных чисел типа int, которые не больше 10 и трех случайных чисел
Как задать диапазон случайных чисел? 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
Сообщений: 136
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     Диапазон случайных чисел
Ответ Создать тему
Опции темы

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