Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.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 - Fatal编程技术网

如何在MATLAB中验证输入是数值的

如何在MATLAB中验证输入是数值的,matlab,Matlab,这是我编写的代码,用于获取每个数字等级对应的字母等级。我想确保用户没有输入任何字符串或字符作为输入。只有数字。所以我使用了isnumeric函数,但当我输入字符串时,代码不起作用,while循环也不会中断。这只会给我一个错误。非常感谢您的帮助。多谢各位 c=input('What is your grade? '); while 1 if ~isnumeric(c) break end if c>=90 && c<=100 disp('A');

这是我编写的代码,用于获取每个数字等级对应的字母等级。我想确保用户没有输入任何字符串或字符作为输入。只有数字。所以我使用了isnumeric函数,但当我输入字符串时,代码不起作用,while循环也不会中断。这只会给我一个错误。非常感谢您的帮助。多谢各位

c=input('What is your grade?  ');
   while 1
if  ~isnumeric(c)
    break
end
if c>=90 && c<=100
   disp('A');
elseif c<90 && c>=80
    disp('B');
else
    disp('F');
end
   end
c=input('你的分数是多少?');
而1
如果~是数字(c)
打破
结束

如果c>=90&&c请查看。它比简单的
isnumeric
功能强大得多,例如,您可以指定数字应位于的范围:
{'>',0,请查看。它比简单的
isnumeric
功能强大得多,例如,您可以指定数字应位于的范围:
{'>',0,
input
计算用户输入的内容*。如果用户输入的内容不是有效的MATLAB表达式,则会看到错误消息。相反

c = input('What is your grade?  ', 's');
's'
参数使函数以字符串的形式准确返回用户键入的内容。然后可以使用
str2double
将其转换为数字。如果不是数字,将返回NaN。您可以测试:

为true时
c=输入(“你的分数是多少?”,“s”);
c=str2double(c);
如果isnan(c)
打破
结束
显示(c)
结束


*此评估实际上使
input
在该表单中使用非常危险,例如用户可以输入
delete('c:/windows')
或类似的东西来破坏您的系统。

输入
评估用户输入的内容*。如果用户输入的内容不是有效的MATLAB表达式,则您会看到错误消息。相反

c = input('What is your grade?  ', 's');
's'
参数使函数以字符串的形式准确返回用户键入的内容。然后可以使用
str2double
将其转换为数字。如果不是数字,将返回NaN。您可以测试:

为true时
c=输入(“你的分数是多少?”,“s”);
c=str2double(c);
如果isnan(c)
打破
结束
显示(c)
结束


*此评估实际上使
input
在该表单中使用非常危险,例如用户可以输入
delete('c:/windows')
或类似的东西来破坏你的系统。

是不是
而1
放错地方了?@Paolo即使我把它移到顶部,我也会得到同样的错误
而1
放错地方了吗?@Paolo即使我把它移到顶部,我也会得到同样的错误