用ChatGPT求解概率论问题

【例15】按规定,某种型号电子元件的使用寿命超过1500小时的为一级品,己知某一批产品的一级品率为0.2 ,现在从中随机地抽查20只元件,用ChatGPT生成MATLAB代码求20只元件中恰有 k 只(k=0 , 1,…,20)为一级品的概率是多少?[大谦MATLAB,dqmatlab点com]

1.ChatGPT提示词

新建ChatGPT会话,在提问文本框中输入下面的提示词:

prompt
你是MATLAB专家。编程解决以下问题:按规定,某种型号电子元件的使用寿命超过1500小时的为一级品,己知某一批产品的一级品率为0.2 ,现在从中随机地抽查20只元件,问20只元件中恰有 k 只(k=0 , 1,…,20)为一级品的概率是多少?以元件只数为横轴,以元件只数对应的概率为纵轴绘散点图。请添加代码注释。

2.代码

根据提示词得到类似下面的代码:

code.matlab
% 已知参数
n = 20; % 抽样总数
p = 0.2; % 一级品率
% 计算元件只数为 0 到 20 时对应的概率
k = 0:20; % 元件只数
probability = binopdf(k, n, p) % 二项分布概率质量函数
% 绘制散点图
figure;
scatter(k, probability, 'filled');
xlabel('元件只数'); % x 轴标签
ylabel('概率'); % y 轴标签
title('20只元件中恰有 k 只为一级品的概率'); % 图表标题

3.使用代码

在MATLAB中新建一个脚本文件,将上面生成的代码复制进去,保存到D:/Samples/gpt15.m。运行脚本,在MATLAB命令窗口输出计算结果。

code.matlab
>> gpt15
probability =
  列 17
    0.0115    0.0576    0.1369    0.2054    0.2182    0.1746    0.1091814
    0.0545    0.0222    0.0074    0.0020    0.0005    0.0001    0.00001521
    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000    0.0000

散点图如图4-1所示。

\[\]

图4-1 散点图

【例16】设袋中有10个球,其中3个是红球,7个是白球。从中取5个球,用ChatGPT生成MATLAB代码求其中有1个球是红球的概率是多少?

1.ChatGPT提示词

新建ChatGPT会话,在提问文本框中输入下面的提示词:

prompt
你是MATLAB专家。设袋中有10个球,其中3个是红球,7个是白球。从中取5个球,编程求其中有1个球是红球的概率是多少?请添加代码注释。

2.代码

根据提示词得到类似下面的代码:

code.matlab
% 红球和白球的数量
red_balls = 3;
white_balls = 7;
% 总球数
total_balls = red_balls + white_balls;
% 从10个球中取出5个球的组合数
total_ways_to_choose = nchoosek(total_balls, 5);
% 从3个红球中取出1个红球的组合数
ways_to_choose_1_red = nchoosek(red_balls, 1);
% 从7个白球中取出4个白球的组合数
ways_to_choose_4_white = nchoosek(white_balls, 4);
% 计算有1个红球的概率
probability = ways_to_choose_1_red * ways_to_choose_4_white / total_ways_to_choose;
% 显示计算结果
disp(probability);

3.使用代码

在MATLAB中新建一个脚本文件,将上面生成的代码复制进去,保存到D:/Samples/gpt16.m。运行脚本,在MATLAB命令窗口输出计算结果。

code.matlab
>> gpt16
    0.4167

【例17】由某台机器生产的螺栓的长度(cm)服从参数为μ=10.05,σ=0.06的正态分布,工厂规定长度在范围10.05\(\pm\)0.12内的螺栓为合格品。用ChatGPT生成MATLAB代码求一个螺栓为不合格品的概率。

1.ChatGPT提示词

新建ChatGPT会话,在提问文本框中输入下面的提示词:

prompt
你是MATLAB专家。由某台机器生产的螺栓的长度(cm)服从参数为μ=10.05,σ=0.06的正态分布,工厂规定长度在10.05-0.12到10.05+0.12范围内的螺栓为合格品。编程求一个螺栓为不合格品的概率。请添加代码注释。

2.代码

根据提示词得到类似下面的代码:

code.matlab
% 定义正态分布的参数
mu = 10.05; % 均值
sigma = 0.06; % 标准差
% 计算长度小于 10.05-0.12 的概率
prob_less_than_lower_limit = normcdf(10.05-0.12, mu, sigma);
% 计算长度大于 10.05+0.12 的概率
prob_greater_than_upper_limit = 1 - normcdf(10.05+0.12, mu, sigma);
% 计算一个螺栓为不合格品的概率(长度小于下限或大于上限)
prob_defective = prob_less_than_lower_limit + prob_greater_than_upper_limit;
% 显示计算结果
disp(prob_defective);

3.使用代码

在MATLAB中新建一个脚本文件,将上面生成的代码复制进去,保存到D:/Samples/gpt17.m。运行脚本,在MATLAB命令窗口输出计算结果。

code.matlab
>> gpt17
    0.0455