Paso 1: Los algoritmos
Para cada cheque número si es prime y si lo es, notifique a usuario vía SMS. Para decidir si un número n es primo, debemos tratar de dividir cada número de 2 a n-1 y ver si el resto en la división es siempre no 0. Si eso es cierto, n no es divisible con cualquier número excepto 1 y sí mismo, que es la definición de un número primo.
Este algoritmo podría optimizarse comprobación sólo números impares (todos los números pares son divisibles por 2 y por lo tanto no primos) y comprobando que sólo sqrt(n) en vez de hasta n-1 (no hay ningún divisor de n es mayor que sqrt(n)) y lo más importante, que sólo podríamos dividir con números primos. ¿Por qué no hacerlo? LinkIt uno es tan poderoso que encuentra números primos más rápido de lo que podrían ser SMSed.
¿Ahora la pregunta es cómo hacer esos SMS interesantes si le viene todo el tiempo? resulta que no hay forma de decir hasta qué punto aparte dos primos va a ser. Siempre será por lo menos uno no privilegiada entre (con excepción de 2 y 3) entonces ¿por qué no utilizar que? Cuando se encuentra un primer programa se detendrá por tiempo determinado por hasta dónde aparte dos últimos primes, multiplicados por amount.and demora sólo después de SMS se enviará y se probará el siguiente número.
Si usted echa un vistazo en el código adjunto verá que también he añadido un "limbo" - parte del código sin escapatoria - donde el programa se atasca si supera el límite de 32 bits int largo y vuelve a contar desde 1 hacia arriba (no queremos).