Начал учить JAVA. Первая программа пусть будет транспонированная матрица. Мне код понятен, очень похоже на c/c++/c#.
Я модифицировал эту программу написанную на си
Транспонированная матрица — матрица, полученная из исходной матрицы заменой строк на столбцы.
import java.io.*;
import java.util.Random;
public class Main
{
public static void main(String[] args) throws IOException
{
BufferedReader bReader = new BufferedReader (new InputStreamReader(System.in));
String str = bReader.readLine();
int n = Integer.parseInt(str);
int[][] a = new int[n][n];
Random rand = new Random();
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
a[i][j] = Math.abs(rand.nextInt() % 100);
System.out.print(a[i][j] + " ");
}
System.out.print("\n");
}
for(int i=0;i<n;i++)
{
for(int j=i;j<n;j++)
{
int temp=a[j][i];
a[j][i]=a[i][j];
a[i][j]=temp;
}
}
System.out.println("Транспонированная матрица:");
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
System.out.print(a[i][j] + " ");
}
System.out.print("\n");
}
System.in.read();
}
}
А принцип тот же. Отличия в чтении с клавиатуры и вывод на консоль. Создается BufferedReader. При его помощи информация с консоли читается в строковую переменную, далее конвертируется в integer… Далее создается экземпляр класса Random для генерации псевдослучайных чисел (для заполнения матрицы)
А далее все в точности так же как в си (и в C#). Заполнение матрицы, потом перестановка элементов, потом снова вывод.
И после переноса на Windows 8 как Jar-файл: