当前位置:网站首页>【输出一个整数的的每一位,由高到低输出。使用递归和不使用递归】
【输出一个整数的的每一位,由高到低输出。使用递归和不使用递归】
2022-08-03 10:49:00 【DJL_new_life】
The future is scary but you can’t just run to the past cause it’s familiar.
未来会让人心生畏惧,但是我们却不能因为习惯了过去,就逃去过去。
题目:输出一个整数的的每一位,由高到低输出
这道题正常的思路是使用递归的方法去写,但是我在这里没有使用递归的方法去写。
思路是:假设判断出这个整数是一个n位的数字,再使用这个整数去除10^(n-1),就可以去掉除了最高位的数字,得到最高位,再对于这个整数取模10^(n-1),得到除了最高位以外的数字,重复进行以上操作
以下是完整代码:
import java.util.Scanner;
/** * 输出一个整数的每一位,如:123的每一位是1 , 2 , 3 * 从高位到低位输出 */
public class OutHignNums {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入整数:");
int a = scanner.nextInt();
int ret = a;
int i = 1;
//算出这个数有几位
while(ret/10 != 0){
ret = ret/10;
i++;
}
//只有一位数时,直接输出,无需进行下面的代码
if(i == 1){
System.out.println(a);
return;
}
for (int j = i-1; j >= 0; j--) {
double tens = Math.pow(10,j);
int num = (int)(a/tens); //得到最高位的数,此时a没有发生改变
//tens是double类型,需要强制类型转换为int,消除小数.
//否则得到的数字是小数,小数点后跟着低位的数
//每次输出整数的最高位
System.out.print(num + " ");
a = (int)(a % tens); //得到去掉最高位的数,继续下次循环
}
}
}
使用递归来解决输出一个整数的的每一位,由高到低输出。
public class Test2 {
public static void main(String[] args) {
prin(3239);
}
public static void prin(int a){
if(a > 9){
prin(a/10);
}
System.out.println(a%10);
}
}
递归的思路:
终止的条件是当 a<= 9时,输出a%10,程序结束。
if(a > 9){
prin(a/10);
}
这段代码的意思是:
当a > 9时,不断的调用自身函数,传入丢掉个位的数。直到a<= 9,结束调用自身函数。
可能代码写的不是很好,希望兄弟们不要介意
边栏推荐
- 在安装GBase 8c数据库的时候,报错显示“Host ips belong to different cluster”。这是为什么呢?有什么解决办法?
- 干货!一种被称为Deformable Butterfly(DeBut)的高度结构化且稀疏的线性变换
- 问下flink -sql 通过cdc抽取数据怎么能更快的抽取数据写到目标端?如何配置?
- 像用户体验设计师一样思考
- 如何改变sys_guid() 返回值类型
- Pixel mobile phone system
- 3D激光SLAM:LeGO-LOAM---两步优化的帧间里程计及代码分析
- SAP 电商云 Spartacus UI 的 External Routes 设计明细
- Advanced use of MySQL database
- oracle计算同、环比
猜你喜欢
随机推荐
大佬们,我遇到一个问题:我源端mysql有一张一直在写入的表,我使用mysql cdc connec
科普大佬说 | 黑客帝国与6G有什么关系?
Mysql OCP 73 questions
二叉搜索树(搜索二叉树)模拟实现(有递归版本)
DOM对象能干什么?
BPMN和DMN基本概念和使用案例
自定义实现乘风破浪的小船
Mysql OCP 72题
pixel手机升系统
This article understands the process from RS485 sensor to IoT gateway to cloud platform
如何检索IDC研究报告?
干货!一种被称为Deformable Butterfly(DeBut)的高度结构化且稀疏的线性变换
完全背包问题
Who is more popular for hybrid products, depending on technology or market?
Depth study of 100 cases - convolution neural network (CNN) to realize the clothing image classification
ECCV2022 | RU&谷歌:用CLIP进行zero-shot目标检测!
机器学习概述
Regulation action for one hundred days during the summer, more than 700 traffic safety hidden dangers were thrown out
如何改变sys_guid() 返回值类型
面试一面