• Lunes 29 de Abril de 2024, 14:49

Autor Tema:  Como mejorar mis ifs  (Leído 2056 veces)

portirijillo

  • Miembro activo
  • **
  • Mensajes: 27
    • Ver Perfil
Como mejorar mis ifs
« en: Jueves 10 de Noviembre de 2011, 08:50 »
0
Hola a todos, estoy elaborando un programa y me quede atorado en unos ifs, hacen lo que les pido, pero quisiera saber de que otra forma se podria escribir la siguiente instruccion, es decir si se puede hacer en uno solo o en 2 a lo mas. Lo pregunto porque ultimamente me revuelve mi cabeza visual, bash y c, a tal punto que no se como usar los && y los || para cada lenguaje.

Código: C
  1.  
  2. if(i)
  3.    if(num[i]=='+' || num[i]=='-')
  4.       if(num[i-1]=='+' || num[i-1]=='-')
  5.           return 0;

Saludos

SevenX3

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Re:Como mejorar mis ifs
« Respuesta #1 en: Jueves 10 de Noviembre de 2011, 12:39 »
0
Yo estoy aprendiendo C++ pero para mi tenes que usar el AND en el if y poner todas las condiciones juntas, nada mas que va a ser mas largo. Creo que es lo mismo. Si alguien sabe otra forma mas avanzada ya que mi nivel es bastante bajo  :ahora:.

ElZard

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re:Como mejorar mis ifs
« Respuesta #2 en: Jueves 10 de Noviembre de 2011, 15:55 »
0
Hola a todos, estoy elaborando un programa y me quede atorado en unos ifs, hacen lo que les pido, pero quisiera saber de que otra forma se podria escribir la siguiente instruccion, es decir si se puede hacer en uno solo o en 2 a lo mas. Lo pregunto porque ultimamente me revuelve mi cabeza visual, bash y c, a tal punto que no se como usar los && y los || para cada lenguaje.

Código: C
  1.  
  2. if(i)
  3.    if(num[i]=='+' || num[i]=='-')
  4.       if(num[i-1]=='+' || num[i-1]=='-')
  5.           return 0;

Veamos, no soy un experto ya que soy de primer año, pero por lo que veo es que tienes 3 ifs seguidos, uno con una condicion y 2 con 2 condiciones en cada una separado por un 'o', osea tenemos que con que se cumple en cada if almenos una condicion retorna 0, (ya que con un solo v entre un 'o', devuelve v), osea se puede poner en un if con && entre las condiciones de cada if (ya que y solo devuelve v cuando todas sus los argumentos son v, osea almenos un v entre cada &&) lo que representaria que de una if pasa a otra

Código: C
  1.  
  2.    if((i) && (num[i]=='+' || num[i]=='-') && (num[i-1]=='+' || num[i-1]=='-'))
  3.           return 0;

Dime si te funciono
Saludos
« última modificación: Jueves 10 de Noviembre de 2011, 16:09 por ElZard »

portirijillo

  • Miembro activo
  • **
  • Mensajes: 27
    • Ver Perfil
Re:Como mejorar mis ifs
« Respuesta #3 en: Viernes 11 de Noviembre de 2011, 00:07 »
0
Justo lo que ocupaba, no sabia que se pudieran agrupar de esa forma las conduciones en ANSI-C

Gracias, Saludos