为什么在条件语句中使用两个 <= 不起作用?
Why doesn't using two <= in a conditional statement work?
我正在写一个简单的条件结构:
numero = as.integer(readline(prompt="Elige un número cualquiera: "))
if(numero < 0){
paste0("El número", numero, "es negativo.")
} else {
if(0 <= numero <= 100){
paste0("El número", numero, "está entre 0 y 100.")
} else {
paste0("El número", numero, "es mayor que 100.")
}
}
然而,当运行这段代码出现错误时:
Error in parse(text = x, srcfile = src): <text>:8:18: unexpected '<='
7: } else {
8: if(0 <= numero <= ^
为什么会这样?
这不是数学。你需要明确。
尝试if(0 <= numero && numero <= 100)
此外,我建议使用向量化 ifelse()
您在 if()
中的条件编码不正确。此外,在这种情况下,要在句子中的字符串之间制作一个 space,paste
优于 paste0
。
这是一个替代修复方法:
numero = as.integer(readline(prompt="Elige un número cualquiera: "))
if(numero < 0){
paste("El número", numero, "es negativo.")
} else {
if(numero >=0 & numero <= 100){
paste("El número", numero, "está entre 0 y 100.")
} else {
paste("El número", numero, "es mayor que 100.")
}
}
我正在写一个简单的条件结构:
numero = as.integer(readline(prompt="Elige un número cualquiera: "))
if(numero < 0){
paste0("El número", numero, "es negativo.")
} else {
if(0 <= numero <= 100){
paste0("El número", numero, "está entre 0 y 100.")
} else {
paste0("El número", numero, "es mayor que 100.")
}
}
然而,当运行这段代码出现错误时:
Error in parse(text = x, srcfile = src): <text>:8:18: unexpected '<='
7: } else {
8: if(0 <= numero <= ^
为什么会这样?
这不是数学。你需要明确。
尝试if(0 <= numero && numero <= 100)
此外,我建议使用向量化 ifelse()
您在 if()
中的条件编码不正确。此外,在这种情况下,要在句子中的字符串之间制作一个 space,paste
优于 paste0
。
这是一个替代修复方法:
numero = as.integer(readline(prompt="Elige un número cualquiera: "))
if(numero < 0){
paste("El número", numero, "es negativo.")
} else {
if(numero >=0 & numero <= 100){
paste("El número", numero, "está entre 0 y 100.")
} else {
paste("El número", numero, "es mayor que 100.")
}
}