用含2的n次幂的多项式来表示一个数(Cpp实现)

本文探讨如何用2的幂表示正整数,通过将十进制数转换为二进制来解决该问题。通过不断除以2的幂,找到对应的指数并累加,实现了一个C++代码示例,包括迭代和递归两种方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用2的幂来表示一个正整数

简单思考一下,所有的奇数和偶数构成了自然数,对于奇数我们可以用2n + 1表示,而偶数我们可以用2n表示。所以我们可以简单的认为任何一个正整数都可以用2的n次幂来表示。事实上我们可以进一步看这个问题:如何把一个十进制数转化为二进制数。一般的方法是把一个十进制数不断除以2,直到商为零,依次写下余数。所以开始的问题也就解决了。下面我们用代码来实现一下这个伟大的过程。

这里我们找一个十分巨大的范围也就是幂小于200的情况。然后不断除以2的i次幂,直到我们发现余数不为零,然后第i- 1次幂为一个2的幂项,直到最后。整个来说就是一个不断除以2的过程。

void findSerise(long int number)
{
   
	int i = 0; 
	while (i 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值