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
Ir a la versión completa