|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
C++论坛
→
『 C++教室 』
→ 数列求和
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
1504
人关注过本帖
标题:
数列求和
只看楼主
加入收藏
小人儿
等 级:
新手上路
帖 子:6
专家分:0
注 册:2019-10-31
结帖率:
33.33%
楼主
收藏
已结贴
√
问题点数:10 回复次数:2
数列求和
III. 数列求和
从键盘输入一个整数n,编程求1*2+2*3+…+n*(n+1)的值,要求程序中不得出现while,for,if关键字。
提示:
1.
使用递归函数实现;
2.
使用?:运算符。
简单一些 谢谢大佬
搜索更多相关主题的帖子:
求和
if
数列
关键字
提示
2019-11-28 20:19
举报帖子
使用道具
赠送鲜花
rjsp
等 级:
版主
威 望:
528
帖 子:9031
专家分:54061
注 册:2011-1-18
第
2
楼
收藏
得分:10
1*2 + 2*3 + 3*4 + …… + n*(n+1)
= (1*1 + 2*2 + 3*3 + …… + n*n) + (1+2+3+……+n)
= 1/6n(n+1)(2n+1) + 1/2n(n+1)
= n(n+1)(n+2)/3
为了防止 n(n+1)(n+2) 中间结果溢出,且又不允许用if,那变形为
n*(n+1)*(n+2)/3 = n/3*(n+1)*(n+2) + n%3*(n+1)*(n+2)/3
2019-11-28 22:53
举报帖子
使用道具
赠送鲜花
雪影辰风
来 自:衡阳市
等 级:
贵宾
威 望:
22
帖 子:177
专家分:387
注 册:2019-6-17
第
3
楼
收藏
得分:0
#include<cstdio>
#include<windows.h>
using namespace std;
long long ans=0;
int doit(int now) {
return now>1?now*(now+1)+doit(now-1):1*2;
}
int main() {
int n;
scanf("%d",&n);
printf("%d",doit(n));
system("pause");
return 0;
}
2019-11-29 22:22
举报帖子
使用道具
赠送鲜花
3
1/1页
1
快速回复:
数列求和
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.032627 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved