Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 从文本文件加载矩阵,加载数据时抛出错误_Matlab_Matrix_Probability - Fatal编程技术网

Matlab 从文本文件加载矩阵,加载数据时抛出错误

Matlab 从文本文件加载矩阵,加载数据时抛出错误,matlab,matrix,probability,Matlab,Matrix,Probability,在MatLab中完成一项作业时,我应该创建一个100x100矩阵,其中包含10到20个随机数,并将它们存储在data.txt中。然后,我假设选择3个数字,并确定在data.txt中找到这三个数字的概率 它不断抛出以下错误: Undefined function 'printf' for input arguments of type 'char'. Error in Lab2 (line 72) printf('Probability of choosing %d is %.4f',num1,

在MatLab中完成一项作业时,我应该创建一个100x100矩阵,其中包含10到20个随机数,并将它们存储在data.txt中。然后,我假设选择3个数字,并确定在
data.txt
中找到这三个数字的概率

它不断抛出以下错误:

Undefined function 'printf' for input arguments of type 'char'.

Error in Lab2 (line 72)
printf('Probability of choosing %d is %.4f',num1, p1/10000);
这是我的代码,我感觉我没有正确创建
data.txt
文件,或者没有正确加载它

r = round(10 + (20-10).*rand(100,100)); %(min + (max-min).*rand(xDim,yDim)

fp = fopen('data.txt','w');

fprintf(fp, '%d ',r);
fclose(fp);

filename = 'data.txt';
B = importdata(filename);

p1 = 0; p2 = 0; p3 = 0; %Counts how many times num1/2/3 shows up
num1 = 12; num2 = 19; num3 = 18; %Choice of numbers

[row col] = size(B);
for i = 1:row
    for j = 1:col
        if B(i,j) == num1
            p1 = p1 + 1;
        end
        if B(i,j) == num2
            p2 = p2 + 1;
        end
        if B(i,j) == num3
            p3 = p3+1;
        end
    end
end

printf('Probability of choosing %d is %.4f',num1, p1/10000);
printf('Probability of choosing %d is %.4f',num2, p2/10000);
printf('Probability of choosing %d is %.4f',num3, p3/10000);

任何帮助都会很好!谢谢

什么类型的变量是
B
,即在工作区中,它对
B
有什么作用?@David我实际上改变了它,我得到了工作的读数并通过了if语句,但现在我被新的错误卡住了。我也更新了错误。
printf
不是Matlab函数。这就是为什么错误显示“
未定义函数printf
”@David Oh jeez。。。我不知道为什么我没有想到这一点。它应该是fprintfAlso
randi(11100100)+9
将是构造随机数的更好方法。