将用户输入值保存到数组

时间:2017-04-07 19:42:10

标签: arrays r while-loop

基本上我想将所有用户输入保存到数组中,并在用户输入0时添加它们。我不知道如何做到这一点。在我的脚本中,x值每次都不可避免地会改变。

到目前为止,这是我的剧本:

print("This program will sum a series of numbers.")
x <- 1:100    
num <- c(x)
while (num[x] != 0) {
    print("Enter the next number (enter 0 when finished)")
    num[x] <- as.numeric(readLines(con=stdin(),1))
}
sum <- sum(num)
print(paste("The sum of your numbers is", sum))

我收到此错误:

  

在while(num [x]!= 0){:     条件的长度> 1,只使用第一个元素

有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:1)

这是一个可能的解决方案:

print("This program will sum a series of numbers.")
next_entry <- 1
entries <- vector()
while (next_entry != 0) {
print("Enter the next number (enter 0 when finished)")
next_entry <- as.numeric(readLines(con=stdin(),1))
entries <- c(entries, next_entry)
}
sum <- sum(entries)
print(paste("The sum of your numbers is", sum))

您的脚本存在的问题是&#34; num&#34;已定义,因为您在第3行设置为1:100。