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, 04:29  


Tema destacado: Sigue las noticias más importantes de elhacker.net en ttwitter!

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (Moderador: [D4N93R])
| | | |-+  Ayuda, corregir un codigo :S
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda, corregir un codigo :S  (Leído 521 veces)
Edu


Desconectado Desconectado

Mensajes: 1.082


Ex XXX-ZERO-XXX


Ver Perfil
Ayuda, corregir un codigo :S
« en: 20 Marzo 2011, 01:02 »

Bueno la idea es q me salga a mi solo, pero no me sale :/

Código
string Miembro1 = "2x-5(65x-8(3-8+5x)-9)+3"
string[] a = new string[10];
        int h = 0;
          string s;
          bool sigue = false;
 
          if (Miembro1.Contains("("))
          {
              for (int i = 1; i < Miembro1.Length; i++)
              {
                  try
                  {
                      if (Miembro1.IndexOf("(", i, i) != -1)
                      {
 
 
                          s = Miembro1.Substring(Miembro1.IndexOf("(", i));
                          for (int k = 1; k < s.Length; k++)
                          {
 
 
                              if (s.Substring(1, k).EndsWith(")"))
                              {
                                  if (sigue == false) { h++; break; }
                                  else { sigue = true; }
                              }
 
                              if (s.Substring(1, k).EndsWith("("))
                              {
 
                                  sigue = true;
                              }
 
 
                              a[h] = s.Substring(1, k);
 
                          }
 
                      }
                  }
                  catch { }
 
              }
          }
 
 foreach (string r in a)
    MessageBox.Show(r);
 
 

Quiero q en este caso por ejemplo salgan 2 mensajes, uno q diga "65x-8(3-8+5x)-9" y el otro q diga "3-8+5x"

Si me entienden lo q quiero hacer se daran cuenta q quiero q sirva para otros por ejemplo "2x4(-6+9)" y ahi largaria solo un mensaje..
Y si tiene uno como "6x-8+3(48x-8(6-2(1+7)+2)-8)" q haga lo mismo..

Pero creo q si arreglan mi codigo para q ande con la ecuacion q pido al principio, ya andara para esos otros, asique si pudieran arreglarlo les agradeceria mucho!

pd: Ven q use el Try, esq me daba un error, talvez lo pueden hacer q funcione sin ese error no se :S


En línea
Xephiro

Desconectado Desconectado

Mensajes: 226



Ver Perfil WWW
Re: Ayuda, corregir un codigo :S
« Respuesta #1 en: 20 Marzo 2011, 06:18 »

Trata descomponiendo tu ecuacion con el metodo Split, a ver si con eso se te aclara un poco mas la forma de resolver tu problema.


En línea
Edu


Desconectado Desconectado

Mensajes: 1.082


Ex XXX-ZERO-XXX


Ver Perfil
Re: Ayuda, corregir un codigo :S
« Respuesta #2 en: 20 Marzo 2011, 14:48 »

Esqe para otras cosas si use el split(), solo q en este caso se me complica, ya q tengo "(" y ")" y seria un desorden total
En línea
Xephiro

Desconectado Desconectado

Mensajes: 226



Ver Perfil WWW
Re: Ayuda, corregir un codigo :S
« Respuesta #3 en: 20 Marzo 2011, 15:11 »

Esqe para otras cosas si use el split(), solo q en este caso se me complica, ya q tengo "(" y ")" y seria un desorden total

Yo creo que haces un seguimiento en forma mental de lo que va pasando no tendrías que desordenare tanto.

primero realizas un Split de los "("

y luego los datos que se separaron con el primer Split los divides todos con un segundo Split para los ")" y vas analizando de adelante hacia atrás los datos con ) y de atras hacia adelante los datos con (, creo que si pules un poco mas esa idea tendría que resultar.
En línea
Edu


Desconectado Desconectado

Mensajes: 1.082


Ex XXX-ZERO-XXX


Ver Perfil
Re: Ayuda, corregir un codigo :S
« Respuesta #4 en: 20 Marzo 2011, 15:18 »

Ja no se, me entrevero y no funciona xD
En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines