算法01
1. 定义一个整型变量并赋任意五位正整数作为初始值,判断它是不是五位 回文数(五位回文数:个位与万位相同,十位与千位相同,例如:12321)
思路(升级版-循环判断):循环输入一个不为0的数进行判断
public static void judgePalindromeNumber(long num){
//输入0则退出循环
while (num!=0) {
num= new Scanner(System.in).nextLong();//从键盘获取输入值
//判断是否是五位数
if(num>10000&&num<100000){
//若个位数=万位数,十位数=千位数则为真,反之为假
if(num%10==num/10000&&num/10%10==num/1000%10){
System.out.println("该数字是回文数");
continue;
}
else{
System.out.println("该数字不是回文数");
continue;
}
}
else{
if(num==0) return;
else{
System.out.println("请输入正确数值");
continue;
}
}
}
}

2. 定义一个整型变量并赋任意五位正整数作为初始值,输出各位数字之和 (例如:12345 各位之和是:1+2+3+4+5 。也就是 15)
思路:(升级版-循环判断)分别求出个、十、百、千、万位
public static void numCount(long num) {
while(num!=0){
num= new Scanner(System.in).nextLong();//从键盘获取输入值
if (num > 10000 && num < 100000) {
int sum = 0;//各位数字之和
sum += num % 10 + num / 10 % 10 + num / 100 % 10 + num / 1000 % 10 + num / 10000;
System.out.println("各位数字之和为:"+sum);
continue;
} else {
if(num==0) return;
else{
System.out.println("请输入正确数值");
continue;
}
}
}
}

3. 定义整型变量 a、b,写出将 a、b 两个变量值进行互换的程序 (要求不能使用第三个变量)
思路(升级版-循环输入):b=(a+b)-b,a=(a+b)-a,所以可赋值其中一个变量初值为a+b
public static void exchangeNum() {
System.out.print("a的初值:");
int a=new Scanner(System.in).nextInt();
System.out.print("b的初值:");
int b=new Scanner(System.in).nextInt();
a=a+b;//a加上b的值,作为中间变量
b=a-b;//b获得a的值
a=a-b;//中间变量-改变后b的值,a获得b的值
System.out.println("a改变后的值为"+new String(a+"")+"\t");
System.out.println("b改变后的值为"+new String(b+"")+"\t");
}

welcome~the interesting soul

浙公网安备 33010602011771号