刷题有一个疑问

public class Main {
    public static void main(String[] args) {
//	    	boolean a = zhengchu(2,10);
//	        System.out.print(a);
//        boolean a = btrue(126);
//        System.out.print(a);

	        int decimalNumber = 10; // 十进制数
	        String binaryString = Integer.toString(decimalNumber, 8); // 转换为二进制字符串
	        int num = Integer.parseInt(binaryString);
	        System.out.println(num);
进制转换
	    	boolean flag = true;
	    	int n = 0;
	    	int i = 1;
	    	while(true) {
                 if(btrue(i)){
                	 n++;
                	 if(n == 2023) {
                		 System.out.println(i);
                		 break;

                	 }
                 }
                 i++;
	    	}
    }
    public static boolean btrue(int i){
        int n2,n8,n10,n16;
		n2=n8=n10=n16=0;
        int n=i;
        while(n!=0) {
        	n2 +=(n%2);
        	n = n/2;
        }
        n = i;
        while(n!=0) {
        	n8 +=(n%8);
        	n = n/8;
        }
        n = i;
        while(n!=0) {
        	n10 +=(n%10);
        	n = n/10;
        }
        n = i;
        while(n!=0) {
        	n16 +=(n%16);
        	n = n/16;
        }
        //String N16 = Integer.toString(i, 16);
        //int n16 = Integer.parseInt(N16);//错误点7e这个字符串不能转回十进制;在字符串转回整数类型时高进制转低进制是会失败的
        if(((i%n2)==0) && ((i%n8)==0) && ((i%n10)==0) && ((i%n16)==0)) {
            return true;
        }
        else {
            return false;
        }	
	}
    public static boolean zhengchu(int n , int i) {
        int sum=0;
        while(true) {
            if(n != 0) {
                sum += n%10;
                n = n/10;
            }
            else {
                break;
            }
        }
        if(i%sum == 0) {
            return true;
        }
        else {
            return false;
        }
    }
}

这个代码没问题,但下面这个代码一直会报错。

Exception in thread "main" java.lang.NumberFormatException: For input string: "10000000000"

at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67)

at java.base/java.lang.Integer.parseInt(Integer.java:665)

at java.base/java.lang.Integer.parseInt(Integer.java:781)

at lanqiao/lanqiao2023_2.Main.btrue(Main.java:33)

at lanqiao/lanqiao2023_2.Main.main(Main.java:19)

package lanqiao2023_2;

public class Main {
    public static void main(String[] args) {
//	    	boolean a = zhengchu(2,10);
//	        System.out.print(a);
//        boolean a = btrue(126);
//        System.out.print(a);

	        int decimalNumber = 10; // 十进制数
	        String binaryString = Integer.toString(decimalNumber, 8); // 转换为二进制字符串
	        int num = Integer.parseInt(binaryString);
	        System.out.println(num);
进制转换
	    	boolean flag = true;
	    	int n = 0;
	    	int i = 1;
	    	while(flag) {
                 if(btrue(i)==true) {
                	 n++;
                	 if(n == 2023) {
                		 System.out.println(i);
                		 break;

                	 }
                 }
                 i++;
	    	}
    }
    public static boolean btrue(int i){
    	int n1=i;
        String N2 = Integer.toString(n1, 2);
        int n2 = Integer.parseInt(N2);
        int n3 = i;
        String N8 = Integer.toString(n3, 8);
        int n8 = Integer.parseInt(N8);
        int n16 =0;
        int n = i;
        while(n!=0) {
        	n16 +=n%16;
        	n = n/16;
        }
        //String N16 = Integer.toString(i, 16);
        //int n16 = Integer.parseInt(N16);//错误点7e这个字符串不能转回十进制;在字符串转回整数类型时高进制转低进制是会失败的
        if(zhengchu(n2,i) && zhengchu(n8,i) && zhengchu(i,i) && (i%n16==0)) {
            return true;
        }
        else {
            return false;
        }
    }
    public static boolean zhengchu(int n , int i) {
        int sum=0;
        while(true) {
            if(n != 0) {
                sum += n%10;
                n = n/10;
            }
            else {
                break;
            }
        }
        if(i%sum == 0) {
            return true;
        }
        else {
            return false;
        }
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/496822.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

缓存雪崩问题及解决思路

实战篇Redis 2.7 缓存雪崩问题及解决思路 缓存雪崩是指在同一时段大量的缓存key同时失效或者Redis服务宕机,导致大量请求到达数据库,带来巨大压力。 解决方案: 给不同的Key的TTL添加随机值利用Redis集群提高服务的可用性给缓存业务添加降…

Requests教程-20-sign签名认证

领取资料,咨询答疑,请➕wei: June__Go 上一小节中,我们学习了requests的token认证方法,本小节我们讲解一下requests的sign签名认证。 在进行接口调用时,一般会要求进行签名操作,以确保接口的安全性和完整…

基于springboot实现课程作业管理系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现课程作业管理系统演示 摘要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,课程作业管理系统当然也不能排除在外。课程作业管理系统是以实际运用为开发背景…

项目实战:电影评论情感分析系统

目录 1.引言 2.数据获取与预处理 3.构建文本分类模型(使用LSTM) 4.结果评估与模型优化 4.2.结果评估 4.2.模型优化 5.总结 1.引言 在本篇文章中,将通过一个完整的项目实战来演示如何使用Python构建一个电影评论情感分析系统。涵盖从数…

OSCP靶场--pyLoader

OSCP靶场–pyLoader 考点(信息收集CVE-2023-0297) 1.nmap扫描 ┌──(root㉿kali)-[~/Desktop] └─# nmap -Pn -sC -sV 192.168.178.26 --min-rate 2500 Starting Nmap 7.92 ( https://nmap.org ) at 2024-03-28 09:14 EDT Nmap scan report for 192.168.178.26 Host is up…

二分图

数据结构、算法总述:数据结构/算法 C/C-CSDN博客 二分图:节点由两个集合组成,且两个集合内部没有边的图。换言之,存在一种方案,将节点划分成满足以上性质的两个集合。 染色法 目的:验证给定的二分图是否可…

房间采光不好怎么改造?这里有6个实用的解决方案!福州中宅装饰,福州装修

当装修中遇到房间采光不好的问题,可以从以下几个方面来解决: ①引入自然光源 尽可能减少光线阻碍物,例如可以考虑打通一些非承重墙,扩大窗户的面积,让阳光直接穿过阳台照射到室内。同时,也可以考虑在某些没…

YOLOV8逐步分解(2)_DetectionTrainer类初始化过程

接上篇文章yolov8逐步分解(1)--默认参数&超参配置文件加载继续讲解。 1. 默认配置文件加载完成后,创建对象trainer时,需要从默认配置中获取类DetectionTrainer初始化所需的参数args,如下所示 def train(cfgDEFAULT_CFG, use_pythonFalse…

17.注释和关键字

文章目录 一、 注释二、关键字class关键字 我们之前写的HelloWorld案例写的比较简单,但随着课程渐渐深入,当我们写一些比较难的代码时,在刚开始写完时,你知道这段代码是什么意思,但是等过了几天,再次看这段…

图片标注编辑平台搭建系列教程(3)——画布拖拽、缩放实现

简介 标注平台很关键的一点,对于整个图片为底图的画布,需要支持缩放、拖拽,并且无论画布位置在哪里,大小如何,所有绘制的点、线、面的坐标都是相对于图片左上角的,并且,拖拽、缩放,…

从零开始学习在VUE3中使用canvas(六):线条样式(线条宽度lineWidth,线条端点样式lineCap)

一、线条宽度lineWidth 1.1简介 值为一个数字 const ctx canvas.getContext("2d"); ctx.lineWidth 6; 1.2效果展示 1.3全部代码 <template><div class"canvasPage"><!-- 写一个canvas标签 --><canvas class"main" r…

图像处理与视觉感知---期末复习重点(5)

文章目录 一、膨胀与腐蚀1.1 膨胀1.2 腐蚀 二、开操作与闭操作 一、膨胀与腐蚀 1.1 膨胀 1. 集合 A A A 被集合 B B B 膨胀&#xff0c;定义式如下。其中集合 B B B 也称为结构元素&#xff1b; ( B ^ ) z (\hat{B})z (B^)z 表示 B B B 的反射平移 z z z 后得到的新集合。…

冥想打坐睡觉功法

睡觉把手机放远一点&#xff0c;有电磁辐射&#xff0c;我把睡觉功法交给你&#xff0c;这样就可以睡好了。

55、Qt/事件机制相关学习20240326

一、代码实现设置闹钟&#xff0c;到时间后语音提醒用户。示意图如下&#xff1a; 代码&#xff1a; #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget), speecher(new QTextToSpeech(t…

C++超市商品管理系统

一、简要介绍 1.本项目为面向对象程序设计的大作业&#xff0c;基于Qt creator进行开发&#xff0c;Qt框架版本6.4.1&#xff0c;编译环境MINGW 11.2.0。 2.项目结构简介&#xff1a;关于系统逻辑部分的代码的头文件在head文件夹中&#xff0c;源文件在s文件夹中。与图形界面…

权限提升-Win系统权限提升篇AD内网域控NetLogonADCSPACKDCCVE漏洞

知识点 1、WIN-域内用户到AD域控-CVE-2014-6324 2、WIN-域内用户到AD域控-CVE-2020-1472 3、WIN-域内用户到AD域控-CVE-2021-42287 4、WIN-域内用户到AD域控-CVE-2022-26923 章节点&#xff1a; 1、Web权限提升及转移 2、系统权限提升及转移 3、宿主权限提升及转移 4、域控权…

Git命令上传本地项目至github

记录如何创建个人仓库并上传已有代码至github in MacOS环境 0. 首先下载git 方法很多 这里就不介绍了 1. Github Create a new repository 先在github上创建一个空仓库&#xff0c;用于一会儿链接项目文件&#xff0c;按照自己的需求设置name和是否private 2.push an exis…

指针数组的有趣程序【C语言】

文章目录 指针数组的有趣程序指针数组是什么&#xff1f;指针数组的魅力指针数组的应用示例&#xff1a;命令行计算器有趣的颜色打印 结语 指针数组的有趣程序 在C语言的世界里&#xff0c;指针是一种强大的工具&#xff0c;它不仅能够指向变量&#xff0c;还能指向数组&#…

如何利用OpenCV4.9离散傅里叶变换

返回&#xff1a;OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇:如何利用OpenCV4.9 更改图像的对比度和亮度 下一篇:OpenCV 如何使用 XML 和 YAML 文件的文件输入和输出 目标 我们将寻求以下问题的答案&#xff1a; 什么是傅里叶变换&#xff0c;为什…

《数据结构学习笔记---第五篇》---链表OJ练习下

step1:思路分析 1.实现复制&#xff0c;且是两个独立的复制&#xff0c;我们必须要理清指针之间的逻辑&#xff0c;注意random的新指针要链接到复制体的后面。 2.我们先完成对于结点的复制&#xff0c;并将复制后的结点放在原节点的后面&#xff0c;并链接。 3.完成random结点…