输出100-300中的任意两个数相同的三位数(不能三个数都相同)
public class Homework3 {
public static void main(String[] args) {
//输出100~300中的任意两个数相同的三位数(注意不要三个数相同的)
for(int i = 100; i < 301; i++) {
int bai = i / 100; //百位
int shi = i % 100 / 10; //十位 或者 shi = i / 10 % 10;
int ge = i % 10; //个位
if( (bai == shi && shi == ge)) {
continue;
}
if(bai == shi || shi == ge || bai == ge) {
System.out.print(i + " ");
}
}
}
}
Tips:1、取个位:i % 10, 或 i % 100 % 10,但是后面这种方法比较复杂。
取十位:i / 10 % 10 ,或 i % 100 / 10,后者更复杂。
取百位:i / 100
2、如果该数的百位、十位、个位都相等,有两种处理方法
if( (bai == shi && shi == ge)) { continue; }
或者
if( !(bai== shi && shi == ge)) { ... }
3、判断是否两位相等的另一种方法
if(a == b && a != c) {
System.out.print(i+" ");
}
else if(a == c && a != b) {
System.out.print(i+" ");
}
else if(b == c && a != b) {
System.out.print(i+" ");
}