0

我的任务是创建一个 Fortran 90 程序,该程序计算需要多少人,以便两个或更多人生日相同的概率变为 90%。

我想定义变量如下:

  • P2 = n 个人中至少有 2 个人生日相同的概率
  • P1 =所有n个人生日不同的概率
  • P2= 1- P1
  • P1 = (364/365) (363/365) (362/365).... ((365-n-1)/365)

编辑:这是我尝试编写的代码:

program birth1
  implicit none
  integer:: n
  real(8):: P1, P2

n=1
P1 = 1

     do
        p1 = P1 * ((365.0d0 -n +1)/365.0d0)

        If (P1 <= 0.1) exit

         n= n+1
   end do

  write (*,*) n
  stop
  end program birth1

这段代码有效,我得到了 41 作为输出。谢谢你。

4

0 回答 0