为什么我在R中得到这个函数的意外输入错误?



如果我输入(例如,c, 2),则希望函数返回华氏温度到摄氏温度的方程,而如果我输入f,则反过来。这是我的函数:


Temperatureconverter <- function(v,x){
x = 0
if(v == c) {          
return(x*9/5+32)
if(v == f){             
return((x−32)×5/9)
}}

错误如下:

Error in source("~/Documents/MAE4000/R/test.R", echo = TRUE) : 
~/Documents/MAE4000/R/test.R:7:14: unexpected input
6:   if(v == f){             
7:     return((x−
^

我重写了下面的代码来解决所有缺失的细节:

Temperatureconverter <- function(v,x)
{
if(v == "c") return(x*9/5+32)
if(v == "f") return((x-32)*5/9)
else return ("Please enter c for Celsius or f for Fahrenheit")
}
Temperatureconverter("f",100) # calling the function 

注释是正确的:

  • 在接收到x的值后将x设置为零计算错了
  • "减号"不是正确的符号
  • 乘法应该总是*。

最新更新