@Foxrey

Почему у меня в консоли выводит одно и то же число, но я хочу сделать рандомное?

#include <iostream>
using namespace std;

int main(int argc)
{
	cout << 1 + rand() % 80<< endl;
	cin.get();
	return 0;
}
  • Вопрос задан
  • 270 просмотров
Решения вопроса 1
myjcom
@myjcom Куратор тега C++
Или так, С++ же в тэге.
#include<random>
#include<iostream>
#include<ctime>

int main()
{
  std::default_random_engine dre(std::time(nullptr));
  std::uniform_int_distribution<int> di(1, 80);

  std::cout << di(dre) << std::endl;

  std::cin.get();
}


Ну а если rand() то хотя бы так
https://en.cppreference.com/w/cpp/numeric/random/rand

На заметку:

У вас main(...) не совсем корректна
и в С++ "принято" явно указывать заголовочные файлы
у вас <cstdlib> и <ctime>
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Zoominger
@Zoominger
System Integrator
Попробуйте так:
#include <stdio.h>      
#include <stdlib.h>     
#include <time.h>      

int main ()
{
  srand (time(NULL)); //инициализация рандомайзера, чтобы числа не были одинаковыми
  cout << 1 + rand() % 80 << endl;
  cin.get();
  return 0;
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы