elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 01:59  


Tema destacado: Suscripción al boletín mensual de elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java (Moderadores: Debci, Leyer)
| | | |-+  este algoritmo es correcto en java??
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: este algoritmo es correcto en java??  (Leído 1,232 veces)
l9_in

Desconectado Desconectado

Mensajes: 2


Ver Perfil
este algoritmo es correcto en java??
« en: 13 Junio 2011, 23:25 »

lo que pasa es que estoy empezando a programar en java y quisiera saber si mi programa es correcto, si corre pero quiero saber si la sintaxis y las reglas de java se cumplen

Código
import java.util.*;
public class palindromo {
 
   public static void main(String[] args) {
       Scanner escaner =new Scanner (System.in);
 
      int NUM,N,DIG,NAUX,CON,M,A[];
      A=new int[10];
 
System.out.println("Digita el numero");
       NUM=escaner.nextInt();
 
N=NUM;
DIG=1;
 
while (10<=N)
{
           N=N/10;
           DIG++;
}
// System.out.println("la cantidad de digitos son: "+DIG);
 
CON=0;
while (CON<DIG)
{
           M=NUM%10;
           A[CON]=M;
           NUM=NUM/10;
           CON++;
}
 
/* CON=0;
while (CON<DIG)
{
           System.out.println(A[CON]);
           CON++;
}
*/

CON=0;
NAUX=A[CON]*10+A[CON+1];
 
while (CON+1<DIG-1)
{
           NAUX=NAUX*10+A[CON+2];
           CON++;
}
 
System.out.println("El palindromo es: **"+NAUX+"**");
 
   }
 
}
 


« Última modificación: 16 Junio 2011, 09:11 por Debci » En línea
bjpenn

Desconectado Desconectado

Mensajes: 108



Ver Perfil WWW
Re: este algoritmo es correcto en java??
« Respuesta #1 en: 13 Junio 2011, 23:46 »

no entiendo mucho tu code pero la manera en que programas es muy complicado
te aconsejo que dividas cada problema en un metodo
"     divide y venceras    "
 eh aqui el metodo palindromo


Código:
public String invertir(String cadena){
   int tamCadena =cadena.length()-1;
   String invertido="";
   int i=0;
   char caracter=' ';
        while(tamCadena>=0){
         
         caracter=cadena.charAt(tamCadena);
         invertido=invertido+caracter;
         tamCadena--;
    }
    return invertido;
   
    }

Código:
public boolean palindromo1(String cadena){
        boolean res=false;
        if(cadena.equals(invertir(cadena))){
            res=true;
        }
        return res;
    }

aki uso dos metodos que juntos realizan una sola tarea
bye bye


En línea

lo importante no es si haz caido si no es si puedes  levantarse
l9_in

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: este algoritmo es correcto en java??
« Respuesta #2 en: 14 Junio 2011, 00:32 »

no entiendo mucho tu code pero la manera en que programas es muy complicado
te aconsejo que dividas cada problema en un metodo
"     divide y venceras    "
 eh aqui el metodo palindromo


Código:
public String invertir(String cadena){
   int tamCadena =cadena.length()-1;
   String invertido="";
   int i=0;
   char caracter=' ';
        while(tamCadena>=0){
        
         caracter=cadena.charAt(tamCadena);
         invertido=invertido+caracter;
         tamCadena--;
    }
    return invertido;
    
    }

Código:
public boolean palindromo1(String cadena){
        boolean res=false;
        if(cadena.equals(invertir(cadena))){
            res=true;
        }
        return res;
    }

aki uso dos metodos que juntos realizan una sola tarea
bye bye


ok ok ok,
mi diste la solucion, pero el maestro que esta medio loco de tanto programar asi me esta enseñando, me enseño c++ y ahora quiere los programas en java, lo que hice fue transcribirlos a java, (que por cierto si sirve mi programa  :xD), y nadamas quiero saber si es correcto como lo hize y sino solicito a alguien que me pueda ayudar  :-\ ... aaaaaaaaaaaa si, los metodos que me incluyes lo hacen con cadena de caracteres, pero mi maestro lo quiere con valores enteros, por eso utilizo el MOD.

en fin... a mi algoritmo nadamas le hace falta estar dividido en metodos,


oye una ultima cosa, como le saco la raiz a un numero en java?? me podrias poner un ejemplo??? gracias por responder!!! :laugh:



mira quiero sacarle raiz a FIB...:

public class primosdefibonacci {

    public static void main(String[] args) {
        int PRIM, SEG, FIB,A,M;
        float RA;
        
        PRIM=5;
        SEG=8;
        FIB=0;
        while (FIB<5000)
        {
            FIB=PRIM+SEG;
            PRIM=SEG;
            SEG=FIB;
            A=2;
            RA=Math.sqrt(FIB); // AQUI ME MARCA ERROR
                
                while(A<=RA)
                {
                    M=FIB%A;
                    if (M==0)
                        A=FIB;
                    A++;
                }
            if (FIB>A)
                System.out.println(FIB+"Es Primo");
            
        }
        
        
    }

}


ME MARCA ESTO AL COMPILAR:
found   : double
required: float
            RA=Math.sqrt(FIB);
« Última modificación: 14 Junio 2011, 00:42 por l9_in » En línea
bjpenn

Desconectado Desconectado

Mensajes: 108



Ver Perfil WWW
Re: este algoritmo es correcto en java??
« Respuesta #3 en: 14 Junio 2011, 02:57 »

Espero que te sirva funciona con numerosssssssssssssssssssssssssssss
 alguna otra duda??????????             bye bye
Código:
public int invertirNumeros(int numerito){
    int res=0;
    int aux=0;
    while(numerito>=10){
        aux=numerito%10;
        res= res*10+aux;
        numerito=numerito/10;
    }
    res=res*10+numerito;
        return res ;
    }

Código:
public boolean capicua(int nume){
    boolean res=false;
    int num=invertirNumeros(nume);
    if(num==nume){
        res=true;
    }
    else{
    res=false;
    }
    return res;
    }
En línea

lo importante no es si haz caido si no es si puedes  levantarse
barbieturico

Desconectado Desconectado

Mensajes: 29


Ver Perfil
Re: este algoritmo es correcto en java??
« Respuesta #4 en: 16 Junio 2011, 09:00 »

Pues te lo digo de memoria, así que lo mismo no funciona así, pero el error que te está dando es porque tu programa espera que le pases un valor float para cargar en la variable RA, pero el resultado de Math.sqrt(FIB) devuelve un double. Para cargar el valor del double en el float deberás castearlo:
Código
RA=new Double(Math.sqrt(FIB)).floatValue();

Otro detalle es que declaras todas las variables en mayúsculas. Esto funciona, pero en realidad es bastante feo. En mayúsculas se suelen declarar los nombres de constantes, y sería algo así:

Código
static final int MICONSTANTE = 0;

Edito: Corregidos los tags para que interprete el código como java ;D
« Última modificación: 16 Junio 2011, 09:53 por barbieturico » En línea
Debci
Moderador
***
Desconectado Desconectado

Mensajes: 1.945


Actualizate o muere!


Ver Perfil WWW
Re: este algoritmo es correcto en java??
« Respuesta #5 en: 16 Junio 2011, 09:13 »

Solo como, consideración offtopic, usen, si es posible las tag's de code para java ;)
Como NO hacer un post en el foro de java/url]

Un saludo
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
tengo el serial correcto xo no me lo acepta en este crackme
Ingeniería Inversa
Ch@CaL 1 565 Último mensaje 19 Enero 2007, 18:48
por frankener1986
Voltaje correcto en el overclock de este cpu?
Overclocking y Refrigeración
Hacker wifi 3 1,998 Último mensaje 6 Julio 2011, 23:42
por Aprendiz-Oscuro
Area de un Circulo, es correcto este ????
Programación C/C++
kaede_ 9 1,340 Último mensaje 10 Julio 2011, 02:27
por kaede_
Ayuda algoritmo en java
Java
estherlui 0 15 Último mensaje Ayer a las 13:13
por estherlui
Ayuda algoritmo en java
Java
estherlui 1 35 Último mensaje Ayer a las 23:05
por Proteus1989
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines