Cita:
Empezado por Casimiro Notevi
Por ejemplo, está más optimizado para el bucle usar un smallint que un integer, incluso mejor todavía un byte, si fuese posible.
|
Discrepo totalmente. En realidad esto de las optimizaciones dependerá del lenguaje, del compilador y la arquitectura de la computadora en donde se compila.
En Delphi y a 32 bits, es mucho más efectivo hacer un for sobre un integer que sobre un Byte o un SmallInt.
Internamente el byte como SmallInt trabajan sobre el tipo integer, dejando en cero lo bytes restantes, y cuando se utilizan estos tipos se hacen conversiones indirectas desde y hacia el tipo integer.
El tamaño del integer corresponde justo al tamaño del registro de la CPU y las micro-operaciones para el for se valen de éstos registros... son bien aceleradas.
Utilizar byte o smallint simplemente lo hace más lento ya que debe hacer estas conversiones que le malgastan unos ciclos, y por apenas un byte no vale la pena intentar ahorrarse memoria en tipos numéricos menores... ¡porque no te la ahorras!
Cita:
Empezado por Casimiro Notevi
No son necesarios decimales, así que se pueden usar tipos de datos acorde a eso.
|
Si alguien pretendiera utilizar un tipo de dato real, sea de punto fijo o flotante, para este ejercicio es un semerendo tonto; por no decir algo más pesado
Si no hay siquiera alguna pizca de referencia o indicio de que se requiera de números reales, ¿quien se pondría a agregar variables de estos tipos?
Discúlpame por mi falta de tacto, pero creo que hasta un recién iniciado se da cuenta.... hay que ser muy bestia.
Saludos,