matlab中,在1—2000的整数中随机地取一个数,问取到的整数既不能被6整除,又不能被8整除的概率是多少?求程序过程

4个回答

  • 我不知道你弄这个问题是需要实验求解还是数学求解.

    数学求解容易:求出所有可以整除6或整除8个个数:2000/6+2000/8-2000/(6和8的最小公倍数)=333+250-83=500 (所有取值向下取整)

    从而概率为:(2000-500)/2000=0.75

    如果使用MATLAB实验求解,如下程序.

    m=2000; %总数

    n=0; %计数器

    k=100000; %matlab计算次数

    for i=1:k

    rou=ceil(rand*m); %随机生成一个1到m的整数

    if mod(rou,6)~=0 & mod(rou,8)~=0

    %不被6整除且不被8整除时取整

    n=n+1;

    end

    end

    n/k

    这个程序每次运算结果不一样,因为是随机实验,可以调整K的大小开考虑试验次数,其结果基本上是在0.75左右的.