Losowanie liczb rzeczywistych

Losowanie liczb rzeczywistych
LI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 22
0

Witam, potrzebuję jakiegoś zapisu w c który pozwoli mi wylosować jakąkolwiek liczbę (zmiennoprzecinkową też)
Jak to uzyskać. Próbowałem tak:
liczba = (min + rand() * (max-min))
ale zwraca mi to głupoty jakieś ;/

Patryk27
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 13042
0

Wylosuj liczbę między 1 a 100 i podziel przez sto?
I przede wszystkim nie baw się w programowanie przez permutacje.

gośćabc
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
  • Postów: 500
0

na widowsie jest i tak niemożliwe osiągnięcie rzeczywistej losowości, rand() nie jest wcale rand nawet jak go zseedujesz, równie dobrze możesz sobie tam wpisać coś z palca

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
0

min+rand()*(max-min)/RAND_MAX; (min lub max muszą być zmiennoprzecinkowe).

d9b2ad7b7d.png

gośćabc
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
  • Postów: 500
0

@_13th_Dragon

Kopiuj
#include <iostream>
#include <random>
#include <vector>

int main()
{
	for(int i = 0 ; i < 10 ; ++i) {
		std::random_device rd;
		std::uniform_int_distribution<int> uniform_dist(0, 1);
		std::default_random_engine el(rd());
		int playTheGame0 = 0, watchGNVids1 = 0;

		int times = 10000;
		while(--times) {
			switch(uniform_dist(el)) {
				case 0:
					++playTheGame0;
					break;
				case 1:
					++watchGNVids1;
					break;
				default:
					std::cout << "Something went really wrong\n";
					break;
			}
		}

		if(playTheGame0 > watchGNVids1)
			std::cout << "PLAY THE GAME !!! " << playTheGame0 << " hits!\n";
		else if(playTheGame0 < watchGNVids1)
			std::cout << "WATCH GOING NATIVE !!! " << watchGNVids1 << " hits!\n";
		else
			std::cout << "DO NOTHING\n";

		playTheGame0 = 0;
		watchGNVids1 = 0;
	}

	return 0;
}

output na mingw

http://i.imgur.com/8WMiURE.png

nie zaprzeczysz, że dałem tutaj wiele szans na wykazanie się kompilatorowi, ale on nic sobie z tego nie robi

zauważ też, że używam dużo nowocześniejszego toola od rand()

to jest temat rzeka, nie chce mi się kłócić już :D są mistrzostwa w lola

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.