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

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

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

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

19.04.2011, 19:59. Просмотров 1744. Ответов 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;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.04.2011, 19:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Диапазон случайных чисел (C++):

Как задать диапазон случайных чисел? - C++
Мне дана формула для диапазона случайных чисел - 10i + 20, где i мой вариант. Так вот, мой вариант 20, но как задать диапазон. Пробывал...

Как указать диапазон генерации случайных чисел? - C++
Возник довольно глупый вопрос,как указать диапазон генерации случайных чисел в C++... int a=random(10); - тут генерируются числа от 1 до...

Запишите шесть строк, состоящих из двух случайных чисел типа int, которые не больше 10 и трех случайных чисел - C++
Запишите шесть строк, состоящих из двух случайных чисел типа int, которые не больше 10 и трех случайных чисел типа float, что не больше...

Массивы. Найти среднее арифметическое отрицательных чисел и подсчитать количество чисел, входящих в диапазон - C++
Всем привет! Начал изучать C++, сталкнулся вот с такой задачей Произвести следующую обработку 15 вещественных чисел: найти среднее...

Запишите функцию для вычисления произведения целых чисел из диапазона от а до в. найдите произведение чисел, диапазон ввести с клавиатуры. В С++ - C++
Запишите функцию для вычисления произведения целых чисел из диапазона от а до в. найдите произведение чисел, диапазон ввести с клавиатуры....

Сформировать одномерный массив целых чисел, используя датчик случайных чисел - C++
Сформировать одномерный массив целых чисел, используя датчик случайных чисел.Распечатать полученный массив. Удалить 5 первых элементов...

3
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;
}
попробуй так
0
hatter
1 / 1 / 0
Регистрация: 01.09.2010
Сообщений: 140
19.04.2011, 22:09  [ТС] #3
не выходит, пишет что randomize и random - не объявленные идентификаторы
0
prazuber
110 / 110 / 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.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.04.2011, 23:19
Привет! Вот еще темы с ответами:

Сформировать одномерный массив целых чисел, используя датчик случайных чисел - C++
1)Сформировать одномерный массив целых чисел, используя датчик случайных чисел. 2)Распечатать полученный массив. 3)Перевернуть массив...

Записать в файл f N целых чисел, полученных с помощью генератора случайных чисел. - C++
Помогите пожалуйста с задачей. Записать в файл f N целых чисел, полученных с помощью генератора случайных чисел. Заполнить файл g...

Сформировать одномерный массив целых чисел, используя датчик случайных чисел. - C++
Сформировать одномерный массив целых чисел, используя датчик случайных чисел. Удалить 5 последних элементов массива. Добавить в...

Сформировать одномерный массив целых чисел, используя датчик случайных чисел - C++
Условие такое 1.Сформировать одномерный массив целых чисел, используя датчик случайных чисел. Распечатать полученный массив. ...


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

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

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