Utilice la programación en lenguaje C para encontrar todos los números primos reversibles en un intervalo determinado
#include lt; stdlib.hgt;
// Determinar si el valor dado es un número primo
int isPrime( int num)
{
int v ;
for( v=2; vlt;=(núm/2); v )
{
si( núm v == 0 ) return 0 ;
}
return 1;
}
//Invertir el valor dado
int numReverse ( int num )
{
int i, val=0
for( i=0; num; i )
{
val *= 10;
val = (núm 10) )
núm /= 10; p >
valor de retorno;
}
#define MAX(a,b) ((a)gt;(b)?(a):(b))< / p>
int main( int argc, char ** argv)
{
int i, r, sv, ev, cnt=0;
do {
printf( "Ingrese dos números enteros: " );
scanf( "d d", amp; sv, amp; ev
} while( (sv gt; = ev) ); //Esto garantiza que la distancia del intervalo numérico sea distinta de cero y no negativa
sv = MAX(sv, 2); que se omiten las no combinaciones y las no combinaciones. Valor no primo 1
for( i=sv; ilt; =ev; i)
{
{
r = numReverse( i
/ /Si ambos números son primos y ambos números no son iguales
if( isPrime( i ) amp; amp; isPrime( r ) amp; amp; (i! =r) )
{
printf( "d amp; d\n", i, r
cnt ; > }
}
}
}
printf( " Contar = d\n", cnt
);devuelve 0;
}