Witam w programie jest kilka błędów jestem tego świadomy, jednak nie mam pomysłu jak mógłbym zrobić to inaczej;
Oto cały kod:
#include <iostream>
//liczenie prawdopodobienstwa w lotto
double pro(double * num, int picks);
int main()
{
double t[5]; int o; //zmienne typu double i int
std::cout << "Podaj 5 licz i ostatnia super liczbe:\n";
for(int i=0; i < 5; i++)
std::cin >> t[i];
std::cin >> o;
for(int j=0;j<1;j++)
{
if((t[j] >= 1 && t[j] <= 47) && (o >= 1 && o <= 27))
std::cout << "Szansa wygranej to jeden do " << pro(t,o) << ".\n"; //wyliczenie wyniku
else
std::cout << "Liczby od 1-5 musza byc mniejsze lub rowna 47, a liczba nr 6 musi byc mniejsza lub rowna 27!\n";
}
std::cout << "do widzenia\n";
return 0;
}
double pro(double * num, int picks)
{
double total = 1.0;
for(int i=0;i<1;i++)
total*=(num[i]+picks/6.0);
return total; }
Główny problem to:
for(int j=0;j<1;j++)
{
if((t[j] >= 1 && t[j] <= 47) && (o >= 1 && o <= 27))
std::cout << "Szansa wygranej to jeden do " << pro(t,o) << ".\n"; //wyliczenie wyniku
else
std::cout << "Liczby od 1-5 musza byc mniejsze lub rowna 47, a liczba nr 6 musi byc mniejsza lub rowna 27!\n";
}
Nie wiem jak mogę ominąć tą pętlę, aby warunek obejmował wszystkie elementy tablicy oraz jest błąd z pierwszą częścia warunku, gdy użytkownik wprowadzi liczbę większą od 47 program dalej działa.
Drugi problem to liczenie prawdopodobieństwa (tak widzę błąd i jestem świadomy tego jak program liczy):
double pro(double * num, int picks)
{
double total = 1.0;
for(int i=0;i<1;i++)
total*=(num[i]+picks/6.0);
return total; }
W jaki sposób mogę obliczyć prawidłowo to pradopodobieństwo?