The Algorithms logo
The Algorithms
AboutDonate
package Misc;

import java.util.Scanner;

/**
 *
 *
 * <h1>Find the Transpose of Matrix!</h1>
 *
 * Simply take input from the user and print the matrix before the transpose and after the
 * transpose.
 *
 * <p><b>Note:</b> Giving proper comments in your program makes it more user friendly and it is
 * assumed as a high quality code.
 *
 * @author Rajat-Jain29
 * @version 11.0.9
 * @since 2014-03-31
 */
public class matrixTranspose {
  public static void main(String[] args) {
    /*
     * This is the main method
     *
     * @param args Unused.
     *
     * @return Nothing.
     */
    Scanner sc = new Scanner(System.in);
    int i, j, row, column;
    System.out.println("Enter the number of rows in the 2D matrix:");

    /*
     * Take input from user for how many rows to be print
     */
    row = sc.nextInt();

    System.out.println("Enter the number of columns in the 2D matrix:");

    /*
     * Take input from user for how many coloumn to be print
     */
    column = sc.nextInt();
    int[][] arr = new int[row][column];
    System.out.println("Enter the elements");
    for (i = 0; i < row; i++) {
      for (j = 0; j < column; j++) {
        arr[i][j] = sc.nextInt();
      }
    }

    /*
     * Print matrix before the Transpose in proper way
     */

    System.out.println("The matrix is:");
    for (i = 0; i < row; i++) {
      for (j = 0; j < column; j++) {
        System.out.print(arr[i][j] + "\t");
      }
      System.out.print("\n");
    }

    /*
     * Print matrix after the tranpose in proper way Transpose means Interchanging
     * of rows wth column so we interchange the rows in next loop Thus at last
     * matrix of transpose is obtained through user input...
     */

    System.out.println("The Transpose of the given matrix is:");
    for (i = 0; i < column; i++) {
      for (j = 0; j < row; j++) {
        System.out.print(arr[j][i] + "\t");
      }
      System.out.print("\n");
    }
  }
}

matrixTranspose