zaczne od tego, ze jestem calkowicie zielony jesli chodzi o ansi c, pierwszy raz stycznosc z nim mialem miesiac temu, czyli na poczatku semestru.
mam do zrobienia na uczelnie projekt w postaci programu liczacego wartosc calki oznaczonej wielomianu stopnia n metoda podstawowa monte carlo.
napisalem juz czesc, w ktorej wprowadzam stopien wielomianu, wspolczynniki przy kolejnych potegach x i przedzial calkowania.
teraz potrzebuje fragmentu, ktory bedzie losowal liczby z podanego przedzialu calkowania. i tu sie pojawia moje pytanie. jest funkcja rand, ktora losuje liczby, ale sa one z przedzialu od 0.
jak zrobic tak, zeby losowane iksy byly z tego konkretnego przedzialu o wczesniej podanych koncach? rowniez wtedy, gdy jeden lub oba z koncow sa liczbami ujemnymi.
ktos sie na tym zna i podpowie w ktora strone powinienem pojsc?
Hint:
rand() % (max - min + 1) + min; // liczba z przedziału <min; max> dla min, max > 0
dzieki, troche mnie naprowadziles i juz sobie poradzilem, ale w troche inny sposob. (dziala dla ujemnych przedzialow)
dla potomnych:
argument=xp+odleglosc*(rand()/(RAND_MAX+1.0));
gdzie:
argument to x ktory mam wylosowac,
xp to poczatek przedzialu,
xk to koniec przedzialu,
odleglosc to odleglosc miedzy koncami przedzialu, jest zdefiniowana przez odleglosc=xk-xp