DISEÑAR UN PROGRAMA QUE INGRESE NUMEROS ENTEROS A UN ARREGLO BIDIMENSIONAL SE PIDE CALCULAR
E IMPRIMIR EL SEGUNDO NUMERO CAPICUA MAS ALTO DE CADA DIAGONAL PRINCIPAL DEL ARREGLO
(CUANDO M=N). (NO USAR ARREGLO LINEAL)
*/
Código
-------------------------------------------------------------------------------------------------------
package pregunta1_pab; import javax.swing.JOptionPane; public class Pregunta1_PAB { static int m=Integer.parseInt(JOptionPane.showInputDialog("Ingresar el tamaño de las filas del arreglo : ")); static int n=Integer.parseInt(JOptionPane.showInputDialog("Ingresar el tamaño de las columna del arreglo : ")); static int num[][]=new int [m][n],auxCapicuaPrincipal,cifra,CapicuaNumero,NumeroPrincipal,respuestaPrincipal,auxMayor,NumeroP; static int auxCapicuaSecundario; ingresar(); mostrar(); diagonales(); } public static void ingresar(){ for(int i=0;i<m;i++){ for(int k=0;k<n;k++){ num[i][k]=Integer.parseInt(JOptionPane.showInputDialog("Ingrese un numero entero mayor de una cifra : ")); } } } public static void mostrar(){ for(int i=0;i<m;i++){ for(int k=0;k<n;k++){ } } } public static void diagonales(){ for(int i=0; i<m;i++){ for(int k=0; k<n;k++){ if(i==k){ CapicuaNumero=0; auxMayor=0; auxCapicuaPrincipal=num[i][k]; while(auxCapicuaPrincipal>0){ cifra = auxCapicuaPrincipal%10; auxCapicuaPrincipal=auxCapicuaPrincipal/10; //CapicuaNumero = 0 NumeroPrincipal=(CapicuaNumero*10)+cifra; } if(NumeroPrincipal==num[i][k]){ if(NumeroPrincipal>auxMayor){ NumeroP = respuestaPrincipal; } } } /*if((i+k)==num.length-1){ auxCapicuaSecundario=num[i][k]; }*/ } } } }
CUANDO CORRE E INGRESO DATOS ME SALE:
- EL MAS ALTO NUMERO ES 0
- NUMERO CAPICUA 0
ME PUEDEN AYUDAR QUE ES LO QUE ESTÁ MAL, GRACIAS.
[MOD] usar etiquetas GeSHi para publicar codigo.