webForumDet fria alternativet

Hur slumpa ett bråk?

Programmering

1 svar · 412 visningar · startad av yador

Medlem sedan mars 2004455 inlägg
Frågan#1

Hejsan, jag har precis gjort en funktion som jag kallar Random(x,y) där x och y kan vara vad som helst. Jag har gjort så den känner av om x och y är av typen int, double, float med mera och om det är så, så slumpas ett tal direkt. Det går bra, men den ska också kunna slumpa fram ett bråktal som ligger mellan x och y? Har någon något tips på hur jag ska göra? Har nämligen ingen aning just nu :(

Min Random funktion ser ut så här länge:

template <typename Any> 
	Any Random(Any min, Any max){
		if(isNumber(min)){ //av typen int,double o.s.v ?
			return min+(double(rand())*(max-min)/RAND_MAX);
		}
		if(std::string(typeid(&min).name()) == "PN11mathematics8FractionE"){ //av typen Fraction som jag har skapat?
			//ska slumpa ett bråktal här
		}
	}

Koden är förstås i c++, men det jag undrar över är ju mer teoretiskt och inte något som är bundet till just c++.

OBS.. Jag har såklart skapat en klass som tar hand om bråktalen om någon undrar det.

Tack på förhand!

Medlem sedan mars 2004455 inlägg
#2

Löste det precis. Måste haft hjärn släpp eller något för det var ju skitenkelt när man väl hade ätet lite mat :)

266 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)