Que hay muchachos como van, en esta entrada les comparto algo curioso que quizas muchos hemos buscado y no encontramos algo en concreto. yo por lo menos cuando lo requeri no encontre lo que buscaba si no algo de pronto parecido pero que de una u otra forma me sirvio.
Bueno sin mas cuento y sin mas chachara este codigo que les traigo es para mostrar figuras con matrices en este caso particular son letras pero no con asteriscos ni con unos y ceros si no con matrices generadas aleatoriamente con la clase Match.Ramdom( ), claro esta que esto no quiere decir que tu no puedas modificar un poco el codigo y poder ingresar tus propios datos o elementos de la matriz en fin si tienes previos conocimientos programando se te va a hacer muy facil este codigo
El programa esta por metodos hay un pequeño menu donde podes elegir la Letra que deses y claro que solo hay algunas letras no todas pero la idea es que esto te pueda servir de base para que tu desarrolles tus propios programas.
package Matrices;
import java.util.Scanner;
public class Matrices_Formas {
static Scanner in = new Scanner(System.in);
public static void main(String[] args) {
System.out.println("\t JUEGO DE MATRICES\n");
System.out.print("Digite numero de filas: ");
int filas = in.nextInt();
System.out.println("Trabajaremos con matrices cuadradas por tanto el numero de columnas\n"
+ "sera igual al de las filas");
int matriz[][] = new int[filas][filas];
for (int i = 0; i < filas; i++) {
for (int j = 0; j < filas; j++) {
matriz[i][j] = (int) (Math.random() * 100);
}
}
Menu(matriz);
}
public static void Menu(int matriz[][]) {
System.out.println("Escoja la Figura que desea ver:"
+ "\n1. Letra M - " + "\t" + "2. Letra X - \n"
+ "3. Letra O - " + "\t" + "4. Letra W - \n"
+ "5. Letra M - ");
int op = in.nextInt();
switch (op) {
case 1:
MostrarMatriz(matriz);
Letra_M(matriz);
break;
case 2:
MostrarMatriz(matriz);
Letra_X(matriz);
break;
case 3:
MostrarMatriz(matriz);
Letra_O(matriz);
break;
case 4:
MostrarMatriz(matriz);
Letra_W(matriz);
break;
case 5:
MostrarMatriz(matriz);
Letra_S(matriz);
break;
default:
System.out.println("Opcion Incorrecta");
Menu(matriz);
}
}
public static void MostrarMatriz(int matriz[][]) {
System.out.print("MATRIZ GENERADA ALEATORIAMENTE\n");
for (int[] matriz1 : matriz) {
System.out.println("");
for (int j = 0; j < matriz.length; j++) {
System.out.print(matriz1[j] + "\t");
}
}
System.out.println("\n");
}
public static void Letra_M(int matriz[][]) {
int mitad = matriz.length / 2;
int fila = matriz.length;
int j = 0, l;
System.out.println("MATRIZ CON FORMA DE M");
for (int i = 0; i < fila; i++) {
System.out.print(matriz[i][j] + "\t");
for (l = 1; l < fila - 1; l++) {
if (i == l && i <= mitad || i + l == fila - 1 && i <= mitad) {
System.out.print(matriz[i][l] + "\t");
} else {
System.out.print(" " + "\t");
}
}
System.out.println(matriz[i][l]);
}
}
public static void Letra_X(int matriz[][]) {
int fila = matriz.length;
int k = 0, j;
System.out.println("MATRIZ CON FORMA DE X");
for (int i = 0; i < fila; i++) {
if (i == 0 || i == fila - 1) {
System.out.print(matriz[i][k] + "\t");
} else {
System.out.print(" " + "\t");
}
for (j = 1; j < fila - 1; j++) {
if (i == j || i + j == fila - 1) {
System.out.print(matriz[i][j] + "\t");
} else {
System.out.print(" " + "\t");
}
}
if (i == 0 || i == fila - 1) {
System.out.println(matriz[i][j]);
} else {
System.out.println(" ");
}
}
}
public static void Letra_O(int matriz[][]) {
int fila = matriz.length;
int k, j = 0;
System.out.println("MATRIZ CON FORMA DE O");
for (int i = 0; i < fila; i++) {
System.out.print(matriz[j][i] + "\t");
}
System.out.println("");
for (int i = 1; i < fila - 1; i++) {
System.out.print(matriz[i][j] + "\t");
for (k = 1; k < fila - 1; k++) {
System.out.print(" " + "\t");
}
System.out.println(matriz[i][k]);
}
j = fila - 1;
for (int i = 0; i < fila; i++) {
System.out.print(matriz[j][i] + "\t");
}
}
public static void Letra_W(int matriz[][]) {
int mitad = matriz.length / 2;
int fila = matriz.length;
int j = 0, l;
System.out.println("MATRIZ CON FORMA DE M");
for (int i = 0; i < fila; i++) {
System.out.print(matriz[i][j] + "\t");
for (l = 1; l < fila - 1; l++) {
if (i == l && i >= mitad || i + l == fila - 1 && i >= mitad) {
System.out.print(matriz[i][l] + "\t");
} else {
System.out.print(" " + "\t");
}
}
System.out.println(matriz[i][l]);
}
}
public static void Letra_S(int matriz[][]) {
int mitad = matriz.length / 2;
int fila = matriz.length;
int j = 0, l;
System.out.println("MATRIZ CON FORMA DE S");
for (int i = 0; i < fila; i++) {
System.out.print(matriz[j][i] + "\t");
}
for (int i = 1; i <= mitad; i++) {
System.out.print("\n" + matriz[i][j] + "\t");
}
for (int i = 1; i < fila; i++) {
for (int k = 1; k < fila; k++) {
if (i == mitad) {
System.out.print(matriz[i][k] + "\t");
}
}
}
System.out.println("");
for (int i = mitad + 1; i < fila - 1; i++) {
for (int k = 0; k < fila; k++) {
if (k != fila - 1) {
System.out.print(" " + "\t");
} else {
System.out.println(matriz[i][k]);
}
}
}
l = fila - 1;
for (int i = 0; i < fila; i++) {
System.out.print(matriz[l][i] + "\t");
}
}
}
Si tienen alguna duda o comentario por favor no duden en hacerlo pueden contactarme en etapiasm@itsa.edu.co o tambien etm930@gmail.com
import java.util.Scanner;
public class Matrices_Formas {
static Scanner in = new Scanner(System.in);
public static void main(String[] args) {
System.out.println("\t JUEGO DE MATRICES\n");
System.out.print("Digite numero de filas: ");
int filas = in.nextInt();
System.out.println("Trabajaremos con matrices cuadradas por tanto el numero de columnas\n"
+ "sera igual al de las filas");
int matriz[][] = new int[filas][filas];
for (int i = 0; i < filas; i++) {
for (int j = 0; j < filas; j++) {
matriz[i][j] = (int) (Math.random() * 100);
}
}
Menu(matriz);
}
public static void Menu(int matriz[][]) {
System.out.println("Escoja la Figura que desea ver:"
+ "\n1. Letra M - " + "\t" + "2. Letra X - \n"
+ "3. Letra O - " + "\t" + "4. Letra W - \n"
+ "5. Letra M - ");
int op = in.nextInt();
switch (op) {
case 1:
MostrarMatriz(matriz);
Letra_M(matriz);
break;
case 2:
MostrarMatriz(matriz);
Letra_X(matriz);
break;
case 3:
MostrarMatriz(matriz);
Letra_O(matriz);
break;
case 4:
MostrarMatriz(matriz);
Letra_W(matriz);
break;
case 5:
MostrarMatriz(matriz);
Letra_S(matriz);
break;
default:
System.out.println("Opcion Incorrecta");
Menu(matriz);
}
}
public static void MostrarMatriz(int matriz[][]) {
System.out.print("MATRIZ GENERADA ALEATORIAMENTE\n");
for (int[] matriz1 : matriz) {
System.out.println("");
for (int j = 0; j < matriz.length; j++) {
System.out.print(matriz1[j] + "\t");
}
}
System.out.println("\n");
}
public static void Letra_M(int matriz[][]) {
int mitad = matriz.length / 2;
int fila = matriz.length;
int j = 0, l;
System.out.println("MATRIZ CON FORMA DE M");
for (int i = 0; i < fila; i++) {
System.out.print(matriz[i][j] + "\t");
for (l = 1; l < fila - 1; l++) {
if (i == l && i <= mitad || i + l == fila - 1 && i <= mitad) {
System.out.print(matriz[i][l] + "\t");
} else {
System.out.print(" " + "\t");
}
}
System.out.println(matriz[i][l]);
}
}
public static void Letra_X(int matriz[][]) {
int fila = matriz.length;
int k = 0, j;
System.out.println("MATRIZ CON FORMA DE X");
for (int i = 0; i < fila; i++) {
if (i == 0 || i == fila - 1) {
System.out.print(matriz[i][k] + "\t");
} else {
System.out.print(" " + "\t");
}
for (j = 1; j < fila - 1; j++) {
if (i == j || i + j == fila - 1) {
System.out.print(matriz[i][j] + "\t");
} else {
System.out.print(" " + "\t");
}
}
if (i == 0 || i == fila - 1) {
System.out.println(matriz[i][j]);
} else {
System.out.println(" ");
}
}
}
public static void Letra_O(int matriz[][]) {
int fila = matriz.length;
int k, j = 0;
System.out.println("MATRIZ CON FORMA DE O");
for (int i = 0; i < fila; i++) {
System.out.print(matriz[j][i] + "\t");
}
System.out.println("");
for (int i = 1; i < fila - 1; i++) {
System.out.print(matriz[i][j] + "\t");
for (k = 1; k < fila - 1; k++) {
System.out.print(" " + "\t");
}
System.out.println(matriz[i][k]);
}
j = fila - 1;
for (int i = 0; i < fila; i++) {
System.out.print(matriz[j][i] + "\t");
}
}
public static void Letra_W(int matriz[][]) {
int mitad = matriz.length / 2;
int fila = matriz.length;
int j = 0, l;
System.out.println("MATRIZ CON FORMA DE M");
for (int i = 0; i < fila; i++) {
System.out.print(matriz[i][j] + "\t");
for (l = 1; l < fila - 1; l++) {
if (i == l && i >= mitad || i + l == fila - 1 && i >= mitad) {
System.out.print(matriz[i][l] + "\t");
} else {
System.out.print(" " + "\t");
}
}
System.out.println(matriz[i][l]);
}
}
public static void Letra_S(int matriz[][]) {
int mitad = matriz.length / 2;
int fila = matriz.length;
int j = 0, l;
System.out.println("MATRIZ CON FORMA DE S");
for (int i = 0; i < fila; i++) {
System.out.print(matriz[j][i] + "\t");
}
for (int i = 1; i <= mitad; i++) {
System.out.print("\n" + matriz[i][j] + "\t");
}
for (int i = 1; i < fila; i++) {
for (int k = 1; k < fila; k++) {
if (i == mitad) {
System.out.print(matriz[i][k] + "\t");
}
}
}
System.out.println("");
for (int i = mitad + 1; i < fila - 1; i++) {
for (int k = 0; k < fila; k++) {
if (k != fila - 1) {
System.out.print(" " + "\t");
} else {
System.out.println(matriz[i][k]);
}
}
}
l = fila - 1;
for (int i = 0; i < fila; i++) {
System.out.print(matriz[l][i] + "\t");
}
}
}
Si tienen alguna duda o comentario por favor no duden en hacerlo pueden contactarme en etapiasm@itsa.edu.co o tambien etm930@gmail.com
ojala les sirva que esten bien saludos.