Я хочу создать программу, в которой пользователю будет предложено ввести местоположение и на основании этого значения местоположения он должен запускать определенный набор кодов. Он должен ждать, пока пользователь не укажет значение местоположения.Подождите, пока пользователь не введет значение и на основе этого значения запустит набор кодов
readinteger <- function()
{
n <- readline(prompt="Enter your location: ")
n <- as.integer(n)
if (is.na(n))
return(as.integer(n))
}
LC <- readinteger()
if (LC== 1)
{
print(x)
}
else if (LC == 2)
{
print(y)
}
else
print(z)
Но здесь переходит к если цикл непосредственно, а затем попросить ввести местоположение
Что-то вроде этого? 'readinteger <- function() {n <- readline (prompt =" Введите ваше местоположение: "); n <- as.integer (n); if (is.na (n)) return (as.integer (n)); ifelse (n == 1, «код для 1», «код для 2»)} ' – Jimbou
@Jimbou: ваш код работает, но для него требуются точки с запятой, потому что область комментариев лишила строки новой строки. 'readinteger <- function() {n <- readline (prompt =" Введите ваше местоположение: "); n <- as.integer (n); if (is.na (n)) {return (as.integer (n))}; ifelse (n == 1, print ("1 is n"), "code for 2");} ' Примечание: Это по сути тот же код, что и комментарий @Jimbou –
BTW, проблема с кодом OP выглядит быть линией 'if (is.na (n))'. Это должно быть отрицание 'if (! Is.na (n))' –