我正在尝试学习R编程,我需要一些帮助。我正在尝试获取用户输入并检查该数字是偶数还是奇数。
user_input = suppressWarnings(as.integer(readline(prompt="Enter a number: ")))
if ((userinput %% 2) == 0)
{
print(paste(user_input,"is Event"))
}
但我收到一条错误消息:
错误讯息: [1]“NA是事件”
答案 0 :(得分:0)
来自?readline
:
readline从终端读取一行(交互式使用)。
所以当您运行代码时会发生什么:
user_input = suppressWarnings(as.integer(readline(prompt="Enter a number: ")))
是readline
立即打印提示,但随后会读取脚本的下一行
if ((user_input %% 2) == 0)
好像是用户的输入。这意味着if
没有得到评估,下一个语句
print(paste(user_input,"is Event"))
马上执行。由于user_input
为NA
,所打印的内容为NA is Event
。
您可以看到,如果您将脚本更改为
,会发生这种情况user_input = suppressWarnings(as.integer(readline(prompt="Enter a number: ")))
2
if ((user_input %% 2) == 0)
{
paste(user_input,"is Event")
}