R язык пользовательского ввода, если условие - PullRequest
0 голосов
/ 06 февраля 2020

Я получаю ввод от пользователя для переменной num в R-lang и проверяю, больше ли число, чем какое-либо значение, используя условие if, но продолжает выдавать ошибку ниже

num = as.integer(readline(prompt="Enter a number: "))
flag = 0
# prime numbers are greater than 1
if(num > 1) {
# check for factors
    flag = 1
 }

Введите число:

Ошибка в if (num> 1) {: пропущенное значение там, где требуется TRUE / FALSE

Выполнение остановлено

Пожалуйста, помогите, спасибо

вот мой код

1 Ответ

1 голос
/ 06 февраля 2020

Если вы запустите весь блок кода сразу, вы получите эту ошибку:

> num = as.integer(readline(prompt="Enter a number: "))
Enter a number: flag = 0
Warning message:
NAs introduced by coercion 
> # prime numbers are greater than 1
> if(num > 1) {
+   # check for factors
+   flag = 1
+ }
Error in if (num > 1) { : missing value where TRUE/FALSE needed
> 

Сначала вам нужно ввести номер, а затем запустить следующие строки

> num = as.integer(readline(prompt="Enter a number: "))
Enter a number: 5

Один раз номер введен, вы можете продолжить.

> flag = 0
> # prime numbers are greater than 1
> if(num > 1) {
+     # check for factors
+     flag = 1
+ }
> print(flag)
[1] 1
>

Прочтите эту ветку для уточнения: Заставьте readline ждать ввода в R

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...