Foros del Web » Programación para mayores de 30 ;) » Java »

Desfragmentar un String.

Estas en el tema de Desfragmentar un String. en el foro de Java en Foros del Web. Hola. Quiero hacer un programa que me defragmente un String de una ecuación. Por ejemplo en un textfield ingreso "2x-3y+4" y al oprimir un botón ...
  #1 (permalink)  
Antiguo 14/09/2009, 23:26
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Desfragmentar un String.

Hola.

Quiero hacer un programa que me defragmente un String de una ecuación.
Por ejemplo en un textfield ingreso "2x-3y+4" y al oprimir un botón "Agregar" se guarde en una variable o arreglo, y al oprimir "Mostrar", por ejemplo, en unos List, se defragmente en números, signos y variables.

Digamos en la List de Números se muestre el 2, 3, y 4. En la de Signos, - y +. En la de variables x & y. Para eso tengo que pasar de Strings a caracteres o algo así imagino. Tengo un bosquejo, prácticamente nada:

Código Java:
Ver original
  1. import java.applet.*;  //Se importan las librerías
  2. import java.awt.*;
  3. import java.lang.*;
  4.  
  5. public class Applet2 extends Applet {
  6.  
  7.     TextField Entrada;  //Se crean los Botones, textfields y el arreglo
  8.     List Num;
  9.     List Signo;
  10.     List Var;
  11.     Button  Agregar;
  12.     Button Mostrar;
  13.     String[] Arreglo = new String[10];
  14.     char caract;
  15.    
  16.  
  17.    
  18.  
  19.     public void init() {
  20.        
  21.         Entrada = new TextField(5); //Se inicializan los objetos
  22.         Num = new List();
  23.         Signo = new List();
  24.         Var = new List();
  25.         Agregar = new Button("Agregar");
  26.         Mostrar = new Button("Mostrar");
  27.         add(Entrada);
  28.         add(Agregar);
  29.         add(Mostrar);
  30.         add(Num);
  31.         add(Signo);
  32.         add(Var);
  33.     }
  34.    
  35.     public static boolean isDigit(char ch)
  36.     {
  37.        
  38.     }
  39.     public char[] convertir (String Arreglo)
  40.     {
  41.         char[] arrayLetras = new char[Arreglo.length()];
  42.  
  43.         for (int i =  0; i < Arreglo[].length();i++)
  44.             arrayLetras[i] = Arreglo.charAt(i);
  45.            
  46.         return arrayLetras;
  47.     }

Les estaría muy agradecido si me ayudaran a corregir/completar mi programa, ya que tengo algunas dudas sobre transformar de strings a char, mostrar valores en objetos List por mencionar algunas.

Desde ya, les agradezco su atención.

Saludos.
  #2 (permalink)  
Antiguo 15/09/2009, 02:02
 
Fecha de Ingreso: diciembre-2008
Mensajes: 100
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Desfragmentar un String.

Hola,

a ver, yo lo habría pensado de la siguiente forma:

- Se recoge el valor de la ecuación.
- Se recorre este valor String, leyendo carácter a carácter y reconociendo poco a poco si se trata de un coeficiente (número), variable o signo. Para ello programaría un pequeño autómata que reconociera por qué estados se va pasando (número, signo, variable). Autómata - Youtube. Esta parte sería la más tediosa.
- Cuando se reconoce un tipo de valor, lo guardaría en su correspondiente array o list de números,signos o variables. Así podría distingir dónde está cada uno (y no sólo usando un array como propones).

Espero que te haya ayudado, un saludo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:33.