java矩陣旋轉代碼(數字旋轉方陣java)

本文目錄一覽:

參考下面的代碼,用java編程一個迴旋(螺旋)矩陣

Java程序:

public class Main {

public static void main(String[] args) {

    int LEN = 8;

    int[][] arr = new int[LEN][LEN];

    int i = 0, j = 0;

    int n = 1;

    

    arr[i][j] = n;

    while(n  LEN * LEN) {

     while(j+1LEN  arr[i][j+1]==0){

     j++;

     arr[i][j] = ++n;

     }

     while(i+1LEN  arr[i+1][j]==0){

     i++;

     arr[i][j] = ++n;

     }

     while(j-1=0  arr[i][j-1]==0){

     j–;

     arr[i][j] = ++n;

     }

     while(i-1=0  arr[i-1][j]==0){

     i–;

     arr[i][j] = ++n;

     }

    }

    

    for(i=0; iLEN; i++) {

     for(j=0; jLEN; j++){

     System.out.printf(“%4d”, arr[i][j]);

     }

     System.out.println();

    }

}

}

運行結果:

   1   2   3   4   5   6   7   8

  28  29  30  31  32  33  34   9

  27  48  49  50  51  52  35  10

  26  47  60  61  62  53  36  11

  25  46  59  64  63  54  37  12

  24  45  58  57  56  55  38  13

  23  44  43  42  41  40  39  14

  22  21  20  19  18  17  16  15

JAVA android 矩陣 怎麼設置坐標

1、設置圖片位置坐標

matrix.postTranslate(x,y) ——這個(x,y)為圖片左上角的位置

2、設置圖片圖片中心點為中心旋轉

matrix.postRotate(角度, x, y);——這個(x,y)為圖片中心點的位置

3、渲染圖片

canvas.drawBitmap( BIT , matrix , new Paint());

如何用JAVA實現螺旋矩陣

import java.io.*;public class RingDemo {

public static void main(String[] args) {

String strIn = “”;

System.out.print(“請輸入矩陣的行列數:”);

InputStreamReader input = new InputStreamReader(System.in);

BufferedReader buff = new BufferedReader(input);

try {

strIn = buff.readLine();

} catch (IOException e) {

System.out.println(e.toString());

}

int int1 = Integer.parseInt(strIn);

int n = int1;

System.out.println(“這是行列數為” + n + “的螺線型數組:”);

int intA = 1; // 初始化

int[][] array = new int[n][n];

int intB;

if (n % 2 != 0) {

intB = n / 2 + 1; // 奇數時i循環次數

} else

intB = n / 2; // 偶數時i循環次數

for (int i = 0; i intB; i++) { // 從外到里循環

// 從左到右橫的開始

for (int j = i; j n – i; j++) {

array[i][j] = intA;

intA++;

}

// 從上到下縱

for (int k = i + 1; k n – i; k++) {

array[k][n – i – 1] = intA;

intA++;

}

// 從右到左橫

for (int l = n – i – 2; l = i; l–) {

array[n – i – 1][l] = intA;

intA++;

}

// 從下到上縱

for (int m = n – i – 2; m i; m–) {

array[m][i] = intA;

intA++;

}

}

// 輸出數組

for (int i = 0; i n; i++) {

for (int j = 0; j n; j++) {

System.out.print(array[i][j] + ” “);

}

System.out.println();

} }

}

java矩陣轉置

你的轉置意思是 行列交換?

public static Object[][] turnA(Object[][] a){

Object[][] b=new Object[a[0].length][a.length];

for(int i=0;ia.length; i++)

for(int j=0;ja[0].length;j++)

b[j][i]=a[i][j];

return b;

}

這個方法轉置的是對象矩陣,因此不能傳入基本變量的數組,需要用類型包裝器包裝。

e.g:

Integer[][] i=new Integer[3][5];

//int[][] i=new int[4][3];

//Can’t use here; Integer,Double,String,byte and so on..

Random r=new Random();

for(int j=0;ji.length;j++){

Arrays.fill(i[j], r.nextInt(100));

System.out.println(Arrays.toString(i[j]));

}

Object[][] o=turnA(i);

for(int j=0;jo.length;j++){

System.out.println(Arrays.toString(o[j]));

這是static void main里的一段驗證程序,程序最前面需要

import java.util.*;

用JAVA程序寫出一個3*3矩陣的轉置

/**

* @author 熙熙

* @2011-4-20

*/

public class JuZhenZhuanZhi {

/**

* @param args

*/

public static void main(String[] args) {

int a[][]={

{11,12,13}

,{21,22,23}

,{31,32,33}

};

System.out.println(“轉置前的矩陣:”);

print(a);

zhuanZhi(a);

System.out.println(“轉置後的矩陣:”);

print(a);

}

public static void zhuanZhi(int a[][]){

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

for(int j=i+1;ja[i].length;j++){

int tem = a[i][j];

a[i][j] = a[j][i];

a[j][i] = tem;

}

}

}

public static void print(int a[][]){

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

int j=0;

for(;ja[i].length-1;j++){

System.out.print(a[i][j]+”,”);

}

System.out.println(a[i][j]);

}

}

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/286123.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-22 16:07
下一篇 2024-12-22 16:07

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python字符串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字符串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字符串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python基礎代碼用法介紹

    本文將從多個方面對Python基礎代碼進行解析和詳細闡述,力求讓讀者深刻理解Python基礎代碼。通過本文的學習,相信大家對Python的學習和應用會更加輕鬆和高效。 一、變量和數…

    編程 2025-04-29
  • Python循環符合要求數字求和

    這篇文章將詳細介紹如何通過Python循環符合要求數字求和。如果你想用Python求和但又不想手動輸入數字,那麼本文將是一個不錯的選擇。 一、使用while循環實現求和 sum =…

    編程 2025-04-29
  • Python將矩陣存為CSV文件

    CSV文件是一種通用的文件格式,在統計學和計算機科學中非常常見,一些數據分析工具如Microsoft Excel,Google Sheets等都支持讀取CSV文件。Python內置…

    編程 2025-04-29
  • 倉庫管理系統代碼設計Python

    這篇文章將詳細探討如何設計一個基於Python的倉庫管理系統。 一、基本需求 在着手設計之前,我們首先需要確定倉庫管理系統的基本需求。 我們可以將需求分為以下幾個方面: 1、庫存管…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • 寫代碼新手教程

    本文將從語言選擇、學習方法、編碼規範以及常見問題解答等多個方面,為編程新手提供實用、簡明的教程。 一、語言選擇 作為編程新手,選擇一門編程語言是很關鍵的一步。以下是幾個有代表性的編…

    編程 2025-04-29
  • Python實現簡易心形代碼

    在這個文章中,我們將會介紹如何用Python語言編寫一個非常簡單的代碼來生成一個心形圖案。我們將會從安裝Python開始介紹,逐步深入了解如何實現這一任務。 一、安裝Python …

    編程 2025-04-29
  • 怎麼寫不影響Python運行的長段代碼

    在Python編程的過程中,我們不可避免地需要編寫一些長段代碼,包括函數、類、複雜的控制語句等等。在編寫這些代碼時,我們需要考慮代碼可讀性、易用性以及對Python運行性能的影響。…

    編程 2025-04-29

發表回復

登錄後才能評論