【发布时间】:2017-03-03 05:25:59
【问题描述】:
这就是我到目前为止所拥有的我有点困惑我是否朝着正确的方向前进 以及如何处理函数以及如何使用哪些变量计算概率?我是编程新手,所以任何帮助将不胜感激 提前致谢
创建一个代码,无论在代码中输入什么函数(下面的示例将对应 f(x) = 0.01*x.^2 + sin(0.5*2*pi*x) ),您将计算其概率.对于输入的所有函数,x 将以 0.1 的增量从 0 变为 50。为此,您必须询问用户他/她想要使用多少个垃圾箱(提示:用户选择的任何数字,加 1),然后创建垃圾箱限制。 bin 限制是通过创建一个从 f(x) 的最小值到 f(x) 的最大值的线性间隔数组来创建的,其中包含用户输入的元素数量(记住 +1 已经被应用)。 现在您有了 bin 值,创建一个 for 循环来检查每个 bin 中有多少 f(x) 值。请记住,每个 bin 的概率是通过匹配数/总点数计算的。 计算出每个 bin 的概率后,创建一个 2x1 子图,其中上图是原始函数 vs. x。底部图是每个 bin 与 bin 编号的概率。
clear;
close all;
clc;
x = 0:50:.1; % vector for x
f = x^2; %declaring f as a function
prompt = 'enter number of bins:'
bin = input(prompt);
binlimit = linspace(x, length(x), bin+1);
ii = 0;
for i=1:length(binlimit)
values = binlimit(0, end); %supposed to return values in binlimit
prob = bin/values; %calculate probability
disp(prob)
end
【问题讨论】:
标签: matlab