0
完全数を見つけるためにRで関数を書く:私はRでの初心者ですと、次の質問しようとしています
が出力としてその 入力として自然数Nとリターンを取るRで関数を作成します 1.それは1から10000
への完全数 3.checkであるかどうかの要因 2.チェックリストを確認してください:1とN.3つのステップがここにあります間 すべての完全数のリスト
factorlist<-function(n){
if(n<2){return("Invalid Input")}
if(n%%1!=0){return("Invalid Input")}
vec<-0
for(i in 1:(n-1)){
if(n%%i==0){
vec[length(vec)]<-i
vec<-c(vec,0)
}
}
vec<-vec[-length(vec)]
return(vec)
}
perfectcheck<-function(n){
if(n-sum(factorlist(n)) ==0) {return("Perfect Number")}
else{return("Not Perfect Number")}
}
perfectcheckN<-function(N){
for(i in 1:N){
if(perfectcheck(i)=="Perfect Number"){
vec[length(vec)]<-i
vec<-c(vec)
}
}
vec<-vec[-length(vec)]
return(vec)
}
と私は私が私の間違いを見つけ出すことができませんでした、まだ数時間のように過ごし、私の第三段階
Error in sum(factorlist(n)) : invalid 'type' (character) of argument
ために、次のエラーを得た、助けてください。ありがとう!