Autor Tema: [SPEC] - Evitar IF innecesarios al programar  (Leído 584 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado empardopo

  • Admin
  • *
  • Mensajes: 21746
  • Gracias 761
  • Espero mejorar al KungFu Master!
    • Mi canal de Youtube
  • Ciudad: Norte de África
  • Pais: Escoña
  • Iniciales nick: EPP
[SPEC] - Evitar IF innecesarios al programar
« en: Mayo 17, 2020, 08:32:23 am »
Advertisement
Aunque seas programador actual al intentar hacer cositas en el BASIC del spectrum te das cuenta que cosas que se suponen que no se deben hacer (GOTOs por ejemplo) no te quedan más remedio que hacerlas por las limitaciones del propio lenguaje.
Te das cuenta que varios Bytes pueden ser la vida y te das cuenta de la lentitud del sistema por lo que cualquier truquillo para ahorrar memoria o ciclos del procesador es crucial...

Aquí traigo algunos ejemplos tontos para analizar y que no siempre serán de utilidad ya que en unos casos serán beneficiosos y en otros no pero en todo caso servirán para abrir un poco la mente al programar e incluso lo mismo podrían servir en otros lenguajes...

A continuación, una línea típica de si pulsas la tecla p la coordenada X aumenta en 1
Código: [Seleccionar]
If inkey$="p" then let x=x+1
sin IF sería lo siguiente:

Código: [Seleccionar]
let x=x+(inkey$="p")
En teoría la segunda opción es más rápida pero tiene la contrapartida de que con
LET siempre hará un cálculo se pulse o no y con IF solo lo hace si se pulsa así que
cuando no se pulsa es más rápido IF.

Se podría hacer un GOTO como goto 100+(inkey$="p") el cual saltaría a la 100
en caso de no pulsar la p y a la 101 en caso de pulsar la p

Ahora vamos a imaginar un número que tiene que ir de 1 a 4 y luego resetear a 1

Código: [Seleccionar]
Let a=a+1:if a=5 then let a=1

sería esto, no?

Código: [Seleccionar]
let a=a+1 or a=5

sería lo mismo pero sin IF

Ahora a pensar, jajajaja!

Espero sirva de ayuda.



 


* El megapost del ZX Spectrum  Autor: empardopo Foro: Offtopic 16/05/2024 (21:06)
* MPAGD (Multi Platform Arcade Game Designer)  Autor: empardopo Foro: Creación de juegos 16/05/2024 (20:53)
* Salón Recreativo #55 (27-04-2024 / 26-05-2024)  Autor: periko Foro: Salón Recreativo FaseBonus 16/05/2024 (16:51)
* Van dos y se cae el del medio - Hilo de cachondeo general  Autor: joselopez Foro: Offtopic 16/05/2024 (00:56)
* ¿A qué estáis jugando ahora mismo?  Autor: joselopez Foro: Offtopic 16/05/2024 (00:35)
* Amiga Games + 1.9.3  Autor: empardopo Foro: Emuladores 15/05/2024 (20:48)
* Retro 320 - Wizard of wor  Autor: empardopo Foro: Competiciones y concursos 15/05/2024 (20:39)
* Ofertas Amazon  Autor: empardopo Foro: Offtopic 15/05/2024 (20:33)
* [N3DS] Red Viper - Emulando Virtual Boy como Dios manda  Autor: sirdrak Foro: Noticias de emuladores 13/05/2024 (00:53)
* La inteligencia artificial ha llegado a la música  Autor: Zael Foro: Offtopic 12/05/2024 (20:24)
* Info sobre MARP  Autor: empardopo Foro: Records y wolfmame 12/05/2024 (20:09)
* Stop the express  Autor: empardopo Foro: ZX Spectrum 12/05/2024 (20:05)
* Retro Portable Maker ArcadeSpain (RPMA)  Autor: empardopo Foro: Otros programas 12/05/2024 (17:37)
* Recopilatorio Retos: Desde el 1 hasta .....  Autor: montypepa Foro: Competiciones y concursos 05/05/2024 (21:30)
* iojukebox Theme, un JukeBox para Attract-Mode  Autor: gucaza Foro: Themes AM 04/05/2024 (02:47)
* Nuevo miniPc para mi vieja recre y juegos Windows compatibles formato 4:3  Autor: jmpuk Foro: Offtopic 02/05/2024 (23:31)
* Homenaje a Locomalito  Autor: beaches Foro: Otros programas 02/05/2024 (23:03)
* [Recomendación] Cine para los findes en casa (bueno, bonito y barato)  Autor: arquillos Foro: Offtopic 02/05/2024 (09:39)
* [Recomendacion] Series para ver  Autor: jmpuk Foro: Offtopic 01/05/2024 (21:54)
* Etpa8: El Reino Subterráneo  Autor: jmpuk Foro: ZX Spectrum 01/05/2024 (21:49)
* West Bank para ZX Spectrum  Autor: empardopo Foro: ZX Spectrum 01/05/2024 (20:07)
* Patrocinador para el foro ArcadeSpain  Autor: empardopo Foro: Noticias 29/04/2024 (19:37)
* Aprende a hacerte un PORTABLE de tu juego arcade favorito  Autor: empardopo Foro: Records y wolfmame 29/04/2024 (19:27)
* Screenshot de empardopo  Autor: empardopo Foro: Otros programas 24/04/2024 (19:42)
* Concurso Bytemaniacos 2025  Autor: empardopo Foro: Creación de juegos 23/04/2024 (21:46)

Reto 320: Wizard of Wor
Buscaunchollo.click