import java.io.*;
public class Jiangxu {
public static void main (String[] args) {
try{
System.out.println ("输入一个整数:");
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String s=br.readLine();
int a=Integer.parseInt(s);
boolean flag=true;
int last=a%10;
while((a>10&&flag)) {
a=a/10;
int pre=a%10;
if(last>pre)
flag=false;
last=pre;
}
if(flag)
System.out.println ("该数是降序数!!!");
else
System.out.println ("该数非降序数...");
}catch(IOException e){} }
}
}
public class Jiangxu {
public static void main (String[] args) {
try{
System.out.println ("输入一个整数:");
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String s=br.readLine();
int a=Integer.parseInt(s);
boolean flag=true;
int last=a%10;
while((a>10&&flag)) {
a=a/10;
int pre=a%10;
if(last>pre)
flag=false;
last=pre;
}
if(flag)
System.out.println ("该数是降序数!!!");
else
System.out.println ("该数非降序数...");
}catch(IOException e){} }
}
}
1. 当前操作数:上一操作数除以10后所得,初始操作数为输入数
2. last为当前操作数的最后一位数
3. pre为当前操作数的最后一位数的前一位,即倒数第二位
4. 比较当前操作数的last和pre,last小于pre,说明当前操作数的最后两位是降序的,那么通过除以10获得下一操作数再循环判断,如此递归操作,如果不出现非降序的情况,则证明整个数位都是降序的
public class Jiangxu
{
public static void main (String[] args)
{
try{
System.out.println ("输入一个整数:");
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String s=br.readLine();
int a=Integer.parseInt(s);
boolean flag=true;
int last=a%10;
while((a>10 && flag))
{
/*比如123,先留下3,然后再留下2,
* 最后判断2和3谁大,以此类推……
* */
a=a/10;
int pre=a%10;
if(last>pre)
flag=false;
last=pre;
}
if(flag)
System.out.println ("该数是降序数!!!");
else
System.out.println ("该数非降序数...");
}catch(IOException e){} }
}
现在这么好的条件,用之!