java列印出迴文數格式方陣
回形數格式方陣的實現
從鍵盤輸入一個整數(1~20)
則以該數字為矩陣的大小,把1,2,3…n*n 的數字按照順時針螺旋的形式填入其中。
例如: 輸入數字2,則程式輸出:
1 2
4 3
輸入數字3,則程式輸出:
1 2 3
8 9 4
7 6 5
輸入數字4, 則程式輸出:
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
package com.atguigu.contact;
import java.util.Scanner;
public class ArrayTest1 {
public static void main(String[] args) {
System.out.println("請輸入一個整數(1-20):");
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
int[][] huiwen = new int[num][num];
//方法1
int count = 1;
int minX = 0;// x軸的最小下標
int minY = 0;// Y軸的最小下標
int maxX = num - 1;// x軸的最大下標
int maxY = num - 1;// Y軸的最大下標
while (minX <= maxX) {
//向右移動
for (int i = minX; i <= maxX; i++) {
huiwen[minY][i] = count;
count++;
}
//向下移動
minY++;//Y軸的最小下標+1
for (int i = minY; i <= maxY; i++) {
huiwen[i][maxX] = count;
count++;
}
//向左移動
maxX--;//X軸的最大下標-1
for (int i = maxX; i >= minX; i--) {
huiwen[maxY][i] = count;
count++;
}
//向上移動
maxY--;//Y軸的最大下標-1
for (int i = maxY; i >= minY; i--) {
huiwen[i][minX] = count;
count++;
}
minX++;//X軸的最小下標-1
}
/*
//方法2
int sum = num * num;
int k = 1;
int i = 0;
int j = 0;
for (int c = 1; c <= sum; c++) {
if (k == 1) {
if (j < num && huiwen[i][j] == 0) {
huiwen[i][j++] = c;
}else {
k = 2;
c--;
j--;
i++;
}
}else if (k == 2) {
if (i < num && huiwen[i][j] == 0) {
huiwen[i++][j] = c;
}else {
k =3;
c--;
i--;
j--;
}
}else if (k ==3) {
if (j >= 0 && huiwen[i][j] == 0) {
huiwen[i][j--] = c;
}else {
k = 4;
c--;
i--;
j++;
}
}else if (k ==4) {
if (i >= 0 && huiwen[i][j] == 0) {
huiwen[i--][j] = c;
}else {
k = 1;
c--;
i++;
j++;
}
}
}
*/
//列印出迴文數格式方陣
for(int p = 0; p < huiwen.length; p++) {
for(int q = 0; q < huiwen[p].length; q++) {
System.out.print(huiwen[p][q]+"\t");
}
System.out.println();
}
}
}
輸出結果:
相關文章
- java判斷迴文數Java
- 陣列迴圈陣列
- 習題8-3 陣列迴圈右移 及 練習7-8 方陣迴圈右移陣列
- 類化意識:8階迴文數同心幻方
- 陣列迴圈移位陣列
- 藍橋杯之特殊迴文數JAVAJava
- ural 1297 最長迴文子串 字尾陣列陣列
- Java陣列03:陣列使用Java陣列
- JS使用迴圈按指定倍數分割陣列組成新的陣列的方法JS陣列
- 陣列迴圈輸出陣列
- awk 陣列和迴圈陣列
- 閒聊藍橋杯JAVA - 生成迴文數Java
- 用遞迴的方法列印出輸入的任意整數遞迴
- Java 陣列Java陣列
- java——陣列Java陣列
- Java陣列Java陣列
- 初識Java(Java陣列-陣列的基本操作)Java陣列
- 題解1161:【迴文數(二)】 (Java描述)Java
- for..in 迴圈陣列需注意陣列
- php陣列迴圈遍歷PHP陣列
- java日期 java陣列Java陣列
- 《Java從入門到失業》第三章:基礎語法及基本程式結構(3.9):陣列(陣列基本使用、陣列的迴圈、陣列拷貝、陣列排序、多維陣列)Java陣列排序
- scala陣列與java陣列對比陣列Java
- 靜態佇列,迴圈陣列實現佇列陣列
- Java的 陣列Java陣列
- Java(二)陣列Java陣列
- JAVA陣列案例!Java陣列
- 【Java】陣列使用Java陣列
- java Arrays陣列Java陣列
- java之陣列Java陣列
- java 陣列(轉)Java陣列
- Java - 7 陣列Java陣列
- 10月15日 棧和佇列實現迴文數字佇列
- Java 陣列的不同定義方式和陣列長度為可變引數Java陣列
- 陣列進行奇數和偶數操作 把奇數放在陣列前面 偶數放在陣列後面陣列
- 特殊迴文數(很坑
- js陣列迴圈方法對比JS陣列
- 陣列元素迴圈右移問題陣列