Search code examples
rpi

Convert character "pi" to value pi


I am working on a homework that requires two input variables and calculate the value.

input.c.x <-as.numeric(readline("input a variable x: "))
input.c.a<- as.numeric(readline("input a variable a: "))
output <- sin((input.c.a)*(input.c.x))

for variable a, I need to input something like "pi/180". But it will not work as a will be character and it will not converted to numbers like 3.14


Solution

  • Since readline returns output of type "character". We can use eval/parse to convert data

    input.c.x <- readline("input a variable x: ")
    input.c.a <- readline("input a variable a: ")
    x <- eval(parse(text = input.c.x))
    y <- eval(parse(text = input.c.a))
    

    and then these numbers can be used for further calculation.

    input.c.x <- readline("input a variable x: ")
    #input a variable x: pi/180
    
    x <- eval(parse(text = input.c.x))
    x
    #[1] 0.01745329