Matlab:根据用户输入生成变量

Matlab: Generate variables according to the user's input

我需要根据用户的输入生成具有随机坐标的变量。让我们假设有一个变量 NV(顶点数)。如果用户说 NV 等于 4,函数应该生成变量 x1,y1,x2,y2,x3,y3,x4,y4。每对(x1-y1、x2-y2 等)都应该代表一个具有某个坐标的顶点。

请帮忙。

使用input命令:

prompt= 'What is your favorite NV?'

NV = input(prompt)

现在可以使用NV根据用户输入生成变量

不要这样做。如果您发现自己在 MATLAB 中有很多变量 x1, x2, x3 等,那么您就走错了路。如果您必须尝试自动创建它们,则更是如此。当您尝试对刚刚创建的变量做任何事情时,只会让您的生活变得更加困难。

更好的方法是将 NV 取为一个数字(精确到什么程度并不重要),并制作一个正确大小的向量或矩阵。

例如,将x坐标设置为随机整数(x在1到100之间,y在1到50之间)

x = randi(100,[NV 1]);
y = randi(50, [NV 1]);

您现在可以将变量集设置为 x(1),y(1),依此类推。绘制它们:

plot(x,y,'*');