Rand

  • Автор темы 250391
  • Дата начала
Статус
Закрыто для дальнейших ответов.
2

250391

Гость
#1
Добрый вечер! Возникла проблема с генератором rand. Нужно немного подредактировать код

Условие задачи
По самолёту проводится 3 отдельных выстрела, вероятность попадания каждого раза равно 0,3. Для выхода из строя достаточно 3 попаданий. При одном попадании самолёт выходит из строя с вероятностью 0,2; при двух (выстрелах) попаданиях 0,6. Найти вероятность того, что самолёт будет выведен из строя при 3 выстрелах.

Код на Visual C++

Код:
#include <stdlib.h>
#include <math.h>
#include <iostream.h>
int main(int argc, char* argv[])
{
int n,i;
double rest1,rest2,rest3,kolvopopad,sbili,sbilis,sbiliss;
cout<<"Введите кол-во попаданий n=";
cin>>n;
for (i=1;i<=kolvopopad;i++)
{
rand1						  //нужно задать генератор rand1
rest1=double((rand1%100)/100);
rest2=double((rand1%100)/100);
rest3=double((rand1%100)/100);

kolvopopad=0;
if(rest1<0.3)
else kolvopopad=kolvopopad+1;

if (rest2<0.3)
else kolvopopad=kolvopopad+1;

if (rest3<0.3)
else kolvopopad=kolvopopad+1;

if (kolvopopad=3)
sbili=sbili+1;
if (kolvopopad=2) 
if (rest2<0,6)
sbilis=sbili+1;
if (kolvopopad=1) 
if (rest2<0,2)
sbiliss=sbili+1;
}

count<<"Вероятность что самалёт выведен из строя при n выстрелах =";
cin>>sbili;
}
Решение:
Вероятность одного попадания: (0.3*0.7*0.7+0.7*0.3*0.7+0.7*0.7*0. 3)*0.2=0.0882
Вероятность двух попаданий: (0.3*0.3*0.7+0.7*0.3*0.3+0.3*0.7*0. 3)*0.6=0.1134
Вероятность трёх попаданий:
0.3*0.3*0.3=0.27
Вероятность трёх промахов:
0.7*0.7*0.7=0.343
 
Статус
Закрыто для дальнейших ответов.