Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Diferencias Entre SELECT CASE / IF...THEN
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Diferencias Entre SELECT CASE / IF...THEN 
 
¿Que diferencias hay entre uno y otro?¿Consume mas recursos uno?

Seguimos con el tema comenzado en http://foro.gambas-es.org/viewtopic.php?f=1&t=822&highlight=
 



 
AnSnarkista - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diferencias Entre SELECT CASE / IF...THEN 
 
Pues mira cuando hay muchas comparaciones a realizar....

Fijate en este ejemplo que te pongo, primero hay un
Código: [Descargar] [Ocultar] [Seleccionar]
if... then,
y luego dentro de el hay un
Código: [Descargar] [Ocultar] [Seleccionar]


¿Te imaginas hacer los con 11
Código: [Descargar] [Ocultar] [Seleccionar]
if..then,
,, con sus
Código: [Descargar] [Ocultar] [Seleccionar]
,,, y que se te olvide alguno,, que lio,no?,, ¿¿¿por donde empezar a buscar el error????

Sin embargo con el Select Case queda todo mas claro...

Código: [Descargar] [Ocultar] [Seleccionar]
FOR c = 0 TO FMain.TableViewdatos.rows.count - 1
  tipo = Left(FMain.TableViewdatos[c, 0].text, 3)
  restotipo = Right(FMain.TableViewdatos[c, 0].text, 2)

 
 IF restotipo <> "01" THEN
   SELECT CASE tipo
    CASE "01."
     FMain.TableViewdatos[c, 4].text = f3(Val(f2(FMain.TableViewdatos[c, 3].text)) / var.sumatotalingreso)

    CASE "02."
      FMain.TableViewdatos[c, 4].text = f3(Val(f2(FMain.TableViewdatos[c, 3].text)) / var.sumatotalgastobasicosAli)
 
    CASE "03."
          FMain.TableViewdatos[c, 4].text = f3(Val(f2(FMain.TableViewdatos[c, 3].text)) / var.sumatotalgastobasicosRopa)
      
    CASE "04."
    FMain.TableViewdatos[c, 4].text = f3(Val(f2(FMain.TableViewdatos[c, 3].text)) / var.sumatotalgastobasicosOtroGastos)
 
    CASE "05."
FMain.TableViewdatos[c, 4].text = f3(Val(f2(FMain.TableViewdatos[c, 3].text)) / var.sumatotalvehiculos)

    CASE "06."
FMain.TableViewdatos[c, 4].text = f3(Val(f2(FMain.TableViewdatos[c, 3].text)) / var.sumatotalocio)


    CASE "07."
FMain.TableViewdatos[c, 4].text = f3(Val(f2(FMain.TableViewdatos[c, 3].text)) / var.sumatotalformacion)

    CASE "08."
FMain.TableViewdatos[c, 4].text = f3(Val(f2(FMain.TableViewdatos[c, 3].text)) / var.sumatotalvivienda)

    CASE "09."
FMain.TableViewdatos[c, 4].text = f3(Val(f2(FMain.TableViewdatos[c, 3].text)) / var.sumatotalmascotas)

    CASE "10."
FMain.TableViewdatos[c, 4].text = f3(Val(f2(FMain.TableViewdatos[c, 3].text)) / var.sumatotalvarios)

    CASE "11."
FMain.TableViewdatos[c, 4].text = f3(Val(f2(FMain.TableViewdatos[c, 3].text)) / var.sumatotalahorro)

 END SELECT

ENDIF
NEXT


Espero que te sirva el ejemplo...

Un saludo

Julio
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diferencias Entre SELECT CASE / IF...THEN 
 
Ya, por eso mismo...jajajajajaja
Si queda mas claro en tu ejemplo, ¿porque no con lo demas?
A mi personalmente, me gusta mas, me es mas comodo leerlo y demas.

Si tiene algun porqué que lo haga peor que usar que el IF, pues lo usare, pero si es mera estetica, seguire prefiriendo el SELECT CASE.

Salud y graciaas!!
 



 
AnSnarkista - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diferencias Entre SELECT CASE / IF...THEN 
 
Para gustos los colores...jajajajja  


Un saludo
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diferencias Entre SELECT CASE / IF...THEN 
 
Pues tienen usos diferentes. Yo uso IF cuando hay que comprobar algo y si existe, ejecutar determinada función. Select lo uso más bien cuando hago muchas condiciones según el valor de una variable y anidar IFs es bastante molesto (y sucio). Pero puedes usar cualquiera, ambos sirven.

Saludos!!
 



 
 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diferencias Entre SELECT CASE / IF...THEN 
 
Yo la verdad es que estoy haciendo lo mismo que tu, si son para elegir entre opciones posibles, uso el SELECT CASE, pero si tengo que comprobar una cosa, uso el IF ... THEN.

Salud!!
 



 
AnSnarkista - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Convertir SELECT CASE De Vb6 A Gambas? Agamenon Aplicaciones/Fragmentos de Código 2 Domingo, 22 Enero 2012, 10:05 Ver último mensaje
Shell
No hay nuevos mensajes Diferencias Entre Gb.gui Y Gb.qt. Coordenadas Shell General 2 Domingo, 30 Octobre 2016, 10:53 Ver último mensaje
Shell
No hay nuevos mensajes Diferencias Entre QBasic Y GW-Basic Shell General 0 Domingo, 20 Enero 2019, 10:57 Ver último mensaje
Shell
No hay nuevos mensajes Diferencias Entre Hosting Y Servidor VPS Â... Shell Hardware 4 Sabado, 16 May 2020, 17:44 Ver último mensaje
jguardon
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron