題解1787:小O的數字 (Java描述)

acDream_發表於2018-06-22

解題思路:不是很好的解法,但是很暴力

注意事項:

參考程式碼:


public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner in = new Scanner(System.in);

String num = null;

// 一行一行去列印電子數字

char[][] nums = new char[][] { { '*', '*', '*' }, // 第一行

{ '*', ' ', '*' }, // 第二行

{ '*', '*', '*' }, // 第三行

{ '*', ' ', '*' }, // 第四行

{ '*', '*', '*' },// 第五行

};

while (in.hasNext()) {

num = in.next();

int j = 0;

while (j < nums.length) {

for (int i = 0; i < num.length(); i++) {

switch (num.charAt(i)) {

case '0':

if (i == num.length() - 1) {

if (j == 2) {

System.out.print("* *");

} else {

System.out.print(String.valueOf(nums[j]));

}

} else {

if (j == 2) {

System.out.print("* * ");

} else {

System.out.print(String.valueOf(nums[j]) + " ");

}

}

break;

case '1':

if (i == num.length() - 1) {

System.out.print("  "+nums[j][2]);

} else {

System.out.print("  "+nums[j][2] + " ");

}

break;

case '2':

if (i == num.length() - 1) {

if (j == 1) {

System.out.print("  *");

} else if (j == 3) {

System.out.print("*  ");

} else {

System.out.print(String.valueOf(nums[j]));

}

} else {

if (j == 1) {

System.out.print("  * ");

} else if (j == 3) {

System.out.print("*   ");

} else {

System.out.print(String.valueOf(nums[j]) + " ");

}

}

break;

case '3':

if (i == num.length() - 1) {

if (j == 1 || j == 3) {

System.out.print("  *");

} else {

System.out.print(String.valueOf(nums[j]));

}

} else {

if (j == 1 || j == 3) {

System.out.print("  * ");

} else {

System.out.print(String.valueOf(nums[j]) + " ");

}

}


break;

case '4':

if (i == num.length() - 1) {

if (j == 0) {

System.out.print("* *");

} else if (j == 3 || j == 4) {

System.out.print("  *");

} else {

System.out.print(String.valueOf(nums[j]));

}

} else {

if (j == 0) {

System.out.print("* * ");

} else if (j == 3 || j == 4) {

System.out.print("  * ");

} else {

System.out.print(String.valueOf(nums[j]) + " ");

}

}

break;

case '5':

if (i == num.length() - 1) {

if (j == 1) {

System.out.print("*  ");

} else if (j == 3) {

System.out.print("  *");

} else {

System.out.print(String.valueOf(nums[j]));

}

} else {

if (j == 1) {

System.out.print("*   ");

} else if (j == 3) {

System.out.print("  * ");

} else {

System.out.print(String.valueOf(nums[j]) + " ");

}

}


break;

case '6':

if (i == num.length() - 1) {

if (j == 1) {

System.out.print("*  ");

} else {

System.out.print(String.valueOf(nums[j]));

}

} else {

if (j == 1) {

System.out.print("*   ");

} else {

System.out.print(String.valueOf(nums[j]) + " ");

}

}


break;

case '7':

if (i == num.length() - 1) {

if (j == 0) {

System.out.print(String.valueOf(nums[j]));

} else {

System.out.print("  *");

}

} else {

if (j == 0) {

System.out.print(String.valueOf(nums[j]) + " ");

} else {

System.out.print("  * ");

}

}


break;

case '8':

if (i == num.length() - 1) {

System.out.print(String.valueOf(nums[j]));

} else {

System.out.print(String.valueOf(nums[j]) + " ");

}


break;

case '9':

if (i == num.length() - 1) {

if (j == 3) {

System.out.print("  *");

} else {

System.out.print(String.valueOf(nums[j]));

}

} else {

if (j == 3) {

System.out.print("  * ");

} else {

System.out.print(String.valueOf(nums[j]) + " ");

}

}


break;

}

}

System.out.println();

j++;

}

}

}

相關文章