elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Ejercicios
| | | |-+  Dudas Ejercicios java
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Dudas Ejercicios java  (Leído 2,341 veces)
Bertili

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Dudas Ejercicios java
« en: 13 Enero 2018, 13:13 pm »

Buenas,

Estaba haciendo un ejercicio en java sobre el numero kaprekar(seguro que os suena), y me sale "Run-time error" cunado entrego. Os dejo el codigo. Porque puede ser?

Gracias ;D :laugh:




package kaprekar;

import java.util.Scanner;

public class Kaprekar {

    public static void toArray(int n, int a[]) {
        int d = 1000;

        for (int i = 0; i < 4; i++) {
            a = n / d;
            n = n % d;
            d = d / 10;
        }
    }

    public static void Clasificarmayor(int a[]) {
        for (int i = 0; i <= 2; i++) {
            for (int j = i + 1; j <= 3; j++) {
                if (a < a[j]) {
                    int t;
                    t = a;
                    a = a[j];
                    a[j] = t;
                }
            }
        }
    }

    public static void Clasificarmenor(int a[], int b[]) {
        for (int i = 3; i >= 0; i--) {
            b[3 - i] = a;
        }
    }

    public static void Pasaranumero(int Menor, int a[], int d, int Mayor, int b[], int ret[]) {
        d = 1000;
        for (int i = 0; i <= 3; i++) {
            Mayor = Mayor + a * d;
            d = d / 10;
        }
        d = 1000;
        for (int i = 0; i <= 3; i++) {
            Menor = Menor + b * d;
            d = d / 10;
        }
        ret[0] = Mayor;
        ret[1] = Menor;
    }

    public static void Resta(int Mayor, int Menor, int ret[]) {
        ret[2] = ret[0] - ret[1];
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int ret[] = new int[3];
        int n, num;
        num = sc.nextInt();
        int con;
        int a[] = new int[4];
        int b[] = new int[4];
        int acon[] = new int[num];
        int Menor = 0;
        int Mayor = 0;
        int d = 1000;
        int q = 0;
        int x = num;

        do {
            con = 0;
            num--;
            n = sc.nextInt();
            while (n != 6174){
                toArray(n, a);
                Clasificarmayor(a);
                Clasificarmenor(a, b);
                Pasaranumero(Menor, a, d, Mayor, b, ret);
                Resta(Mayor, Menor, ret);
                n = ret[2];
                con++;
            }
            acon[q] = con;
            q++;
        } while (num != 0);
        int y = 0;
        while(x != 0) {
            System.out.println(acon[y]);
            x--;
            y++;
        }
    }

}


En línea

ThunderCls


Desconectado Desconectado

Mensajes: 455


Coder | Reverser | Gamer


Ver Perfil WWW
Re: Dudas Ejercicios java
« Respuesta #1 en: 6 Febrero 2018, 17:45 pm »

Debes revisar el uso de los arrays en tu codigo, tus errores vienen dados por querer acceder a los valores de tu array de enteros "a" sin usar el subindice "a[index]"


En línea

-[ "…I can only show you the door. You're the one that has to walk through it." – Morpheus (The Matrix) ]-
http://reversec0de.wordpress.com
https://github.com/ThunderCls/
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ejercicios Java
Ejercicios
Lorena88 1 7,166 Último mensaje 21 Enero 2009, 01:42 am
por Amerikano|Cls
2 ejercicios de java
Java
kay19 1 9,046 Último mensaje 28 Agosto 2009, 20:34 pm
por Caballero Maldito
Ejercicios Java « 1 2 »
Java
rshocush 12 15,321 Último mensaje 10 Marzo 2010, 15:15 pm
por Mai89
Ejercicios en JAVA « 1 2 »
Ejercicios
madpitbull_99 16 41,105 Último mensaje 1 Febrero 2016, 22:53 pm
por sodark
Dudas con ejercicios de circuitos
Electrónica
Gm3z 0 2,298 Último mensaje 28 Diciembre 2012, 18:32 pm
por Gm3z
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines