全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1963 4
2015-09-18
要求是这样的 编写一个函数

使得 输入一个整数n,如果n>=0,则终止运算,并输出一句话:“请输入一个正整数”;

否则,如果n是偶数,则将n除2,并赋给n;

否则,将3n+1赋给n。不断循环,直到n=1,才停止计算,并输出一句话:“运算成功”。

写的R程序是:

Er=function(n){

if (n<=0)  list("请输入一个正整数!")

else{ repeat{ if (n==1) break if (n%%2==0) n=n/2 else n=3*n+1 } list("计算成功") } }

请各位帮忙看下 哪里错了。。谢谢啦。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-9-18 10:57:35
> Er<-function(n)
+ {
+   if (n<=0)
+     print("请输入一个正整数!")  else
+     {
+       repeat
+     { if (n==1) break;
+           if (n%%2==0)
+             n<-n/2 else
+               n<-3*n+1 }
+       print("计算成功")
+     }
+ }
> Er(-20)
[1] "请输入一个正整数!"
> Er(13889)
[1] "计算成功"


养成良好的书写习惯。。。虽然我的也不怎么良好
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-9-18 11:17:18
jinkelazzz 发表于 2015-9-18 10:57
> Er
太感谢了。。是因为break后面少了一个分号吗 为什么加上分号还是不对 还是一定要像这样分行写 才行啊?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-9-18 11:22:18
羊乖乖 发表于 2015-9-18 11:17
太感谢了。。是因为break后面少了一个分号吗 为什么加上分号还是不对 还是一定要像这样分行写 才行啊?
要分行。R是分行读的
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-9-28 16:34:27
jinkelazzz 发表于 2015-9-18 11:22
要分行。R是分行读的
感谢你的回复 谢谢。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群