Pagini recente » Cod sursa (job #930743) | Cod sursa (job #2803856) | Cod sursa (job #2841119) | Cod sursa (job #2236247) | Cod sursa (job #438081)
Cod sursa(job #438081)
#include <fstream.h>
#include <iostream.h>
#include <iomanip.h>
using namespace std;
#define doubl double
int N, K;
doubl a[40];
doubl S = 0;
int nr = 0;
void back(int k, doubl jeg, int last)
{
if (k == K + 1) {
S += jeg;
nr++;
} else {
for (int i = last + 1; i <= N - K + k; i++)
back(k + 1, jeg * a[i], i);
}
}
int main()
{
int i;
ifstream f ("dezastru.in");
ofstream g ("dezastru.out");
f >> N >> K;
for (i=1; i<=N; ++i)
f >> a[i];
back (1, 1, 0);
g << setprecision (7);
g << S / nr;
return 0;
}