java循环输出123_Java——循环应用

循环练习

练习一:计算1~100之间奇数和的运算/*

计算1~100之间奇数和的运算

思路:1、需要定义一个变量来初始化和并记录和,sum

2、计算1~100之间的数需要使用for循环来控制相加的次数

3、需要判断1~100之间的奇数

4、将奇数的和进行相加,sum = sum + i

5、打印出循环后相加的值

*/

public class LoopTest{

public static void main(String[] args){

//定义一个变量来记录和

int sum = 0;

//使用for循环来遍历1~100之间的数

for(int i=1;i<=100;i++){

//判断1~100之间的数哪些是奇数

if(i%2==1){

//将判断后的奇数值进行相加

sum += i;

}

}

//打印出最后累计的和

System.out.println(sum);

}

}

运行结果:

d6584d93946e0016c8159f71c09623fb.png

练习二:计算水仙花数:三位数:100~999,比如1*1*1+2*2*2+3*3*3=123,找出有这种特性的数/*

需求:找出水仙花数:三位数:100~999,比如1*1*1+2*2*2+3*3*3=123,找出有这种特性的数

思路:1、定义三个变量分别记录个位,十位,百位上的数

2、使用for循环来遍历100~999之间的数

3、将数进行拆分,需要用到除法、取模的运算

4、判断个位、十位、百位三个数的立方相加是否是这个数的本身,如果是这个数就是水仙花数

5、打印出这些数

*/

public class LoopTest_1{

public static void main(String[] args){

//定义个位数的变量

int ge = 0;

//定义十位数的变量

int shi = 0;

//定义百位数的变量

int bai = 0;

//使用for循环来遍历100~999之间的数

for(int i=100;i<=999;i++){

//拆分百位上的数

bai = i / 100;

//拆分十位上的数

shi = i / 10 % 10;

//拆分个位数

ge = i % 10;

//判断该数是否符合要求比如1*1*1+2*2*2+3*3*3=123

if(ge*ge*ge+shi*shi*shi+bai*bai*bai == i){

System.out.println(i);

}

}

}

}

运行结果:

a45ad8eb400cdc2111381b9c3ee31b26.png

练习三:打印出大写字母和小写字母/*

需求:打印大写字母和小写字母

思路:利用ASCII编码表来进行打印

1、定义两个变量来记录字母a和A

2、利用for循环来控制打印的次数

3、打印出数字对应得字母<

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中,由于浮点数的精度问题,可能会出现无限循环小数。对于这种情况,可以使用BigDecimal类来处理。 BigDecimal类可以表示任意精度的十进制数,它可以处理大于64位的整数和小数。在使用BigDecimal类时,需要注意以下几点: 1. 使用BigDecimal类时,应该使用其构造方法来初始化BigDecimal对象,而不是使用double类型的值来初始化。 例如: ``` BigDecimal bd = new BigDecimal("0.1"); ``` 2. 在进行浮点数运算时,应该使用BigDecimal类提供的方法,而不是使用double类型的运算符。 例如: ``` BigDecimal a = new BigDecimal("0.1"); BigDecimal b = new BigDecimal("0.2"); BigDecimal c = a.add(b); ``` 3. 在比较两个BigDecimal对象的值时,应该使用compareTo()方法,而不是使用等于(==)或不等于(!=)运算符。 例如: ``` BigDecimal a = new BigDecimal("0.1"); BigDecimal b = new BigDecimal("0.2"); if (a.compareTo(b) < 0) { System.out.println("a < b"); } else if (a.compareTo(b) > 0) { System.out.println("a > b"); } else { System.out.println("a = b"); } ``` 关于java无限循环小数判定问题,可以通过以下代码来解决: ``` public static boolean isRepeatingDecimal(BigDecimal num) { BigDecimal[] arr = num.divideAndRemainder(BigDecimal.ONE); BigDecimal decimalPart = arr[1]; String decimalStr = decimalPart.toString().substring(2); // 去掉小数点和整数部分 if (decimalStr.length() < 2) { return false; // 小数部分长度小于2,不可能循环 } int halfLength = decimalStr.length() / 2; for (int i = 1; i <= halfLength; i++) { String str = decimalStr.substring(0, i); if (decimalStr.matches("^(" + str + ")+(.*)" + str + "$")) { return true; // 存在循环节 } } return false; // 不存在循环节 } ``` 该方法接收一个BigDecimal对象,判断其是否为无限循环小数,返回true或false。 以上是关于Java中处理无限循环小数的基础知识和方法介绍,希望能对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值