输入一个整数,判断其是否是2^n,是就输出这个数,不是就输出和它最接近的为2^n的那个整数。

2024-06-23 19:38

本文主要是介绍输入一个整数,判断其是否是2^n,是就输出这个数,不是就输出和它最接近的为2^n的那个整数。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

输入一个整数,判断其是否是2^n,若是,输出这

//个数,若不是,输出和它最接近的为2^n的那个整数。

附加源代码1:

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{int input;//键盘输入一个整数inputint i,j;//i,j待会儿存放input与左边和右边的为2^n的差值int m,n;//保存左边,右边的与inout最接近的2^nprintf("请输入一个整数input=");scanf("%d",&input);if(input<=0){printf("不是2^n");printf("和它最接近的2^n为1");}else{for(int k=0;k<1000;k++)//假设2^n中的n不会超过1000{if(input==pow(2.0,k))	{printf("%d是2^k",input);break;//跳出for循环}else if(input>pow(2.0,k-1)&&input<pow(2.0,k)){i = input-pow(2.0,k-1);j = pow(2.0,k)-input;m = pow(2.0,k-1);n = pow(2.0,k);if(i<j)//即与他最接近的是他左边的那个数字{printf("%d",m);break;}else{printf("%d",n);break;}}}}system("pause");//包含在include<stdlib.h>return 0;
}

==================================================================================

附加源代码2:

//如果这个数是2的n次方幂,那可以将这个数先对2取模为0,再对2整除,再对2取模,
//一直到这个数最后为2;如果不能这样做,那么这个整数就不是2的n次方幂。

<span style="color:#000000;">#include<stdio.h>
#include<stdlib.h>
int main()
{int input;//键盘输入一个整数inputint count = 1;//待判断的整数是2的count次方printf("请输入一个整数input=");scanf("%d",&input);while(input){if(2==input)//依次除2,最后只剩下2时,表明是2的几次幂{printf("YES:他是2的%d次幂\n",count);break;}if(0==input%2)//如果数与2求余为0{input = input/2;//那么取他的一半继续循环下去count++;//幂加1}else{printf("NO\n");//此循环类可以判断前后的与他最接近的2^n并输出break;}}return 0;
}
</span>

这篇关于输入一个整数,判断其是否是2^n,是就输出这个数,不是就输出和它最接近的为2^n的那个整数。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1088087

相关文章

如何通过try-catch判断数据库唯一键字段是否重复

《如何通过try-catch判断数据库唯一键字段是否重复》在MyBatis+MySQL中,通过try-catch捕获唯一约束异常可避免重复数据查询,优点是减少数据库交互、提升并发安全,缺点是异常处理开... 目录1、原理2、怎么理解“异常走的是数据库错误路径,开销比普通逻辑分支稍高”?1. 普通逻辑分支 v

从基础到高级详解Python数值格式化输出的完全指南

《从基础到高级详解Python数值格式化输出的完全指南》在数据分析、金融计算和科学报告领域,数值格式化是提升可读性和专业性的关键技术,本文将深入解析Python中数值格式化输出的相关方法,感兴趣的小伙... 目录引言:数值格式化的核心价值一、基础格式化方法1.1 三种核心格式化方式对比1.2 基础格式化示例

从基础到进阶详解Python条件判断的实用指南

《从基础到进阶详解Python条件判断的实用指南》本文将通过15个实战案例,带你大家掌握条件判断的核心技巧,并从基础语法到高级应用一网打尽,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录​引言:条件判断为何如此重要一、基础语法:三行代码构建决策系统二、多条件分支:elif的魔法三、

java -jar example.jar 产生的日志输出到指定文件的方法

《java-jarexample.jar产生的日志输出到指定文件的方法》这篇文章给大家介绍java-jarexample.jar产生的日志输出到指定文件的方法,本文给大家介绍的非常详细,对大家的... 目录怎么让 Java -jar example.jar 产生的日志输出到指定文件一、方法1:使用重定向1、

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

在Linux中改变echo输出颜色的实现方法

《在Linux中改变echo输出颜色的实现方法》在Linux系统的命令行环境下,为了使输出信息更加清晰、突出,便于用户快速识别和区分不同类型的信息,常常需要改变echo命令的输出颜色,所以本文给大家介... 目python录在linux中改变echo输出颜色的方法技术背景实现步骤使用ANSI转义码使用tpu

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

Go语言如何判断两张图片的相似度

《Go语言如何判断两张图片的相似度》这篇文章主要为大家详细介绍了Go语言如何中实现判断两张图片的相似度的两种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 在介绍技术细节前,我们先来看看图片对比在哪些场景下可以用得到:图片去重:自动删除重复图片,为存储空间"瘦身"。想象你是一个

Python使用pynput模拟实现键盘自动输入工具

《Python使用pynput模拟实现键盘自动输入工具》在日常办公和软件开发中,我们经常需要处理大量重复的文本输入工作,所以本文就来和大家介绍一款使用Python的PyQt5库结合pynput键盘控制... 目录概述:当自动化遇上可视化功能全景图核心功能矩阵技术栈深度效果展示使用教程四步操作指南核心代码解析