Programación General > Pascal

 sacar el resto

(1/1)

Panteon:
Saludos

Tengo un pequeño problema en un programa que estoy haciendo, necesito  obtener el ultimo  digito de un número

por ejemplo de 887  sacar el 7 ó de 453 sacar el  3.

la verdad he intentado varias formas de lograrlo..pero sin éxito...me gustaria saber si alguien me pudiera ayudar con eso...

Muchas Gracias

Amilius:
Usa el operador módulo: (realiza una división entera y obtienes el "residuo")


--- Código: Text --- // con en resultado entre [0...y-1] modulo:=x mod y; //Para tu caso [0..9]residuo:=numero mod 10;  
Para enteros positivos el resultado puede ir de 0 a y-1.
Si usaras módulos potencias de 2 es más rápido usar "and" en numeros enteros:
Por ejemplo módulo 2,4,8,16,...  (noten que se aplica la "máscara" correspondiente al modulo-1. Ej. para 2 es 1, para 4 es 3, para 8 es 7. El efecto de máscara se nota claramente al escribir los números en binaro )


--- Código: Text --- modulo=x and $1; //Muy util para ver si es impar;)modulo=x and $3;modulo=x and $7;modulo=x and $F;  
Aplicar el operador lógico de bits "and" para estos casos especiales (módulos potencias de 2 de enteros positivos) es de lejos la forma más rápida.

Panteon:
Muchas gracias...jajaja ahora que me lo esplicas así, fue una preguntilla bastante obvia

pero muchas gracias por sacarme de mi problema  :lol:

Navegación

[0] Índice de Mensajes

Ir a la versión completa