标题:C语言程序设计入门 一道题不懂思路 求帮助 十分感谢!
只看楼主
Anado
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2019-11-11
结帖率:33.33%
 问题点数:0 回复次数:3 
C语言程序设计入门 一道题不懂思路 求帮助 十分感谢!
题目(Description):

幂(power)指乘方运算的结果。nm指将n自乘m次,把nm看作乘方的结果,叫做n的m次幂。

构造一个递增序列,序列中的n个元素由2的幂和3的幂(互不相等)构成,如:2, 3, 4, 8, 9, ......,即:21, 31, 22, 23, 32, ......。

输入(Input):

序列元素个数n

输出(Output):

(1)序列的第n项;

(2)序列元素前n项之和。

示例(Sample):

输入(Input):

5

输出(Output):

9

26

[此贴子已经被作者于2019-11-26 00:06编辑过]

搜索更多相关主题的帖子:  序列 程序设计 C语言 元素 
2019-11-25 21:17
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
nm指将n自乘m次
即:21, 31, 22, 23, 32, ......
贴完了题目后,劳驾看一眼贴得对不对嘛!

因为题目中没交代n的取值范围,所以这题别人做不了。
如果n<=50的话,可以用 uint32_t;如果n<=102的话,可以用 uint64_t;
再大的话,就不是一个小题目了

虽然题目因条件不足而完成不了,但整个遍历过程是很简单了,例如
程序代码:
#include <stdio.h>

int main( void )
{
    for( unsigned i=1,p2=2,p3=1,p=2; i<=50; ++i,p=(p2*2<p3*3?p2*=2:p3*=3) )
    {
        printf( "%u: %u\n", i, p );
    }
}
输出为
1: 2
2: 3
3: 4
4: 8
5: 9
……
48: 1073741824
49: 1162261467
50: 2147483648

2019-11-26 09:47
forever74
Rank: 12Rank: 12Rank: 12
来 自:CC
等 级:贵宾
威 望:49
帖 子:1636
专家分:3940
注 册:2007-12-27
得分:0 
r版主的代码犀利呀
粉丝值++

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2019-11-26 20:04
Anado
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2019-11-11
得分:0 
回复 2楼 rjsp
谢谢!
2019-11-27 15:09



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-498080-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.416615 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved