• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Losowanie liczb spełniających rozkład normalny [C]

0 głosów
888 wizyt
pytanie zadane 18 marca 2020 w C i C++ przez gallaxxyy Początkujący (270 p.)

Mam wygenerować tablice typu float 100 elementową liczbami z przedziału (0,1) spełniającą rozkład normalny.

Udało mi się wygenerować samą tablicę, lecz nie mam pomysłu jak sprawić żeby generowane liczby spełniały rozkład normalny.

Na podstawie tego mam wygenerować histogram.

Fragment tego co mam:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
#define N 100

double GiveRandom(double a){
	while(0)
  srand((unsigned int)time(NULL));
	
	return  (((double)rand()/(double)(RAND_MAX)) * a);

}

int main(){

float tab[N];
int i;
for(i=0; i<N; i++){
	tab[i] = GiveRandom(1);
}

for(i=0; i<N; i++){
	printf("%d . %.2f\n", i, tab[i]);
}
return 0;
}

 

1 odpowiedź

+1 głos
odpowiedź 18 marca 2020 przez pionas0407 Gaduła (4,620 p.)

Hej, to może Ci pomóc: https://en.wikipedia.org/wiki/Box%E2%80%93Muller_transform 

Jest wiele sposobów na generowanie liczba w rozkładzie normalnym, ten jest najczęściej używany.

 

Podobne pytania

0 głosów
2 odpowiedzi 2,514 wizyt
pytanie zadane 26 maja 2020 w C i C++ przez saju13013 Nowicjusz (230 p.)
0 głosów
1 odpowiedź 1,014 wizyt
pytanie zadane 29 marca 2020 w C i C++ przez KimVivvi Nowicjusz (120 p.)
0 głosów
0 odpowiedzi 612 wizyt

93,766 zapytań

142,723 odpowiedzi

323,376 komentarzy

63,360 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...