循环算法--2的次幂

目录

一.前言

二.算法的核心原理

三.算法的核心代码


一.前言

        该算法主要能够实现输入一个整数n,能够判断出该整数是否是2的幂次方的功能。

例如:当这个整数n=1时,会输出 yes,因为它是2的0次幂。同理,当n=2的时候,也会输出yes,因为它是2的1次幂,而当输入3的时候,会输出no。

二.算法的核心原理

        判断一个数是不是2的幂次方的方法,只需要用这个数不断的除以2,要是最后的结果是1,则证明这个数就是2的幂次方。

        所以,为了达到这个效果,我们可以考虑使用循环。

首先明确循环的结束条件,也就是最后的结果是1的时候,就可以结束了,并且提示用户它是2的幂次方。

当然我们不需要这样才结束,当结果还没有除到1的时候,就已经不能被2整除了,这时候就已经可以确定这个数不是2的幂次方了,并把结果告知给用户。

三.算法的核心代码

int main() {
	//给你一个整数n,请你判断它是否是2的幂次方。
	int n = 16;

    //当它的结果还没有到1,以及还能被2整除的时候,就继续执行这个循环。
	while (n > 1 && n % 2 == 0) {
		n /= 2;
	}
    
    //当循环结束的时候,再对结果进行判断,就可以得到答案了。
	if (n == 1) {
		printf("它是2的幂次方");
	}
	else {
		printf("它不是2的幂次方");
	}
	return 0;
}

如上所示,我给定一个整数为16,并对它进行判断,下面我们来看一下代码的运行结果:

 

因为16是2的4次方,因此最后输出的结果也是它是2的幂次方。 

        

相关推荐

  1. [C/C++入门][循环]14、计算2(2n方)

    2024-07-20 02:36:02       17 阅读
  2. 为什么 HashMap 容量是 2

    2024-07-20 02:36:02       10 阅读
  3. leetcode-2

    2024-07-20 02:36:02       47 阅读
  4. [leetcode] 2

    2024-07-20 02:36:02       27 阅读
  5. leetcode231 判断一个给定整数是否是2n

    2024-07-20 02:36:02       45 阅读
  6. 【面试题】i&(i-1)判断n是否为2

    2024-07-20 02:36:02       78 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-20 02:36:02       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-20 02:36:02       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-20 02:36:02       45 阅读
  4. Python语言-面向对象

    2024-07-20 02:36:02       55 阅读

热门阅读

  1. Android gradle groovy改为kotlin总结

    2024-07-20 02:36:02       16 阅读
  2. 大模型日报 2024-07-18

    2024-07-20 02:36:02       16 阅读
  3. SpringBoot如何限制请求访问次数

    2024-07-20 02:36:02       17 阅读
  4. CSS简介

    2024-07-20 02:36:02       16 阅读
  5. C++ STL is_partitioned 用法和实现

    2024-07-20 02:36:02       16 阅读
  6. Python基础学习Day_06

    2024-07-20 02:36:02       16 阅读
  7. android SpannableStringBuilder span 设置点击事件

    2024-07-20 02:36:02       17 阅读
  8. 牛客算法入门01

    2024-07-20 02:36:02       13 阅读
  9. Webpack基础学习-Day01

    2024-07-20 02:36:02       15 阅读