Cześć,
jedna z części mojego zdania zakłada wypełnienie kontenera A 100 000 pseudolowowymi wynikami z rozkładu gamma gdzie alfa=3,71 beta=1. W przypadku gdy wynik wartosć rozkladu bedzie wieksza niż 18.0 to ma zostać rzucony wyjątek.Obsługa wyjątku będzie polegać na wypisaniu w oknie konsoli że liczba jest wieksza od 18 i pominięciu tej liczby. Po obsłużeniu wyjątku program kontynuuje pobieranie kolejnych wartości z generatora i zapisywanie ich do kontenera A.
Nie mogę uzywać pętli,tylko algorytmy z STL i nie wiem za bardzo gdzie mam ustalić te sekcje wyjątków jeśli do wypełnienia kontenera używam generate-a.
#include <iostream>
#include <vector>
#include <functional>
#include <random>
#include<algorithm>
using namespace std;
random_device rd;
double rozkladGamma()
{
mt19937 gen(rd());
gamma_distribution<double> distribution(3.71, 1.0);
return distribution(gen);
}
int main()
{
vector<double> A(100000);
generate(A.begin(),A.end(),rozkladGamma);
}
Czy mogę w generate uzyc lambdy? bo chyba sie z tym nie spotkalem,