如何请求特定的用户输入?

12次浏览(最近30天)
汉娜
汉娜 2021年8月20日
评论道: Awais赛义德2021年8月20日
如果他们想要Exp1或Exp2,我想问用户。如果用户进入“1”或“2”,则我想显示“运行exp 1或2”,否则我希望程序显示错误消息,直到用户输入“1”或“2”。
提示输入= (EXP1请输入1,EXP2请输入2);% 问
经验=输入(提示);
如果Exp == 1 || 2%如果用户没有输入1或2
disp (运行exp 1或2
其他的
经验=输入(的错误。EXP1请输入1,EXP2请输入2:');%又问
结束
disp (EXP)
这是我到目前为止写的代码,但我不认为逻辑是正确的,我也当我尝试输入'1'或'2'时,我得到错误:
" INPUT的第一个参数必须是字符串或字符"
2的评论
汉娜
汉娜 2021年8月20日
谢谢,现在我的错误消失了。但为什么我输入一个不是1或2的值,我没有得到一个武器消息?

登录评论。

接受的答案

Awais赛义德
Awais赛义德 2021年8月20日
这是你的代码的修正版本
提示输入= (EXP1请输入1,EXP2请输入2);
经验=提示;%不需要输入(提示);
如果(exp == 1 || exp == 2)%没有写入exp == 1 ||2.它不正确
disp (运行exp 1或2
其他的
经验=输入(的错误。EXP1请输入1,EXP2请输入2:');
结束
disp (EXP)
注意,在显示'ERROR.....'时,程序就会停止,不处理新输入的值
3评论

登录评论。

更多的答案(2)

艾伦·史蒂文斯
艾伦·史蒂文斯 2021年8月20日
你不需要“输入”两次:
提示=EXP1请输入1,EXP2请输入2% 问
经验=输入(提示);
如果Exp == 1 || 2%如果用户没有输入1或2
disp (运行exp 1或2
其他的
经验=输入(的错误。EXP1请输入1,EXP2请输入2:');%又问
结束
disp (EXP)
1评论
汉娜
汉娜 2021年8月20日
谢谢,我删除了第一个输入,我的错误消失了。但为什么我输入的值不是1或2,例如3,我没有收到警告消息?

登录评论。


西蒙•陈
西蒙•陈 2021年8月20日
可以在while循环中做这个
提示=EXP1请输入1,EXP2请输入2% 问
经验=输入(提示);
(exp ~= 1 && exp ~= 2)%如果用户没有输入1或2
经验=输入(的错误。EXP1请输入1,EXP2请输入2:');
结束
disp (运行exp 1或2
disp (EXP)

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!

翻译的