1. 程式人生 > >0~9數字中,組成三位數字,並且三位數字之間最大數減去最小數值為5, 比如:409 954 803

0~9數字中,組成三位數字,並且三位數字之間最大數減去最小數值為5, 比如:409 954 803

package 第五天的作業;
/*
* 0~9數字中,組成三位數字,並且三位數字之間最大數減去最小數值為5, 比如:409 954 803
*/
public class Demo13 {
public static void main(String[] args) {

int n = 0; //記錄這個數
int count = 0; //記錄滿足條件的數的個數
for(int i = 0; i < 10; i++) {
for(int j = 0; j < 10; j++) {
for(int k = 0; k < 10; k++) {
//產生三位數
n = i * 100 + 10*j + k;
if(method(n)) {
count ++;
System.out.println(n);
}
}
}
}
System.out.println("總數為:" +count);
}
public static boolean method(int n) {
int a = n % 10; //個位
int b = n / 10 % 10; //十位
int c = n / 100; //百位
//三個數排序 a<b<c
int temp = 0;
//首先如果 a > b,那麼把a和b的值互換,變成了 a < b
if(a > b) {
temp = a;
a = b;
b = temp;
}
//其次如果a > c,那麼把a和c的值互換,變成了a < c
if(a > c) {
temp = a;
a = c;
c = temp;
}
//最後如果b > c,那麼把b和c的值互換,變成了b < c,此時就能確定a < b < c,排序完成
if(b > c) {
temp = b;
b = c;
c = temp;
}
if(c - a == 5 || c - b == 5 || b - a == 5) {
return true;
}
return false;
}
}