C sharp - Generar un número relativamente primo a otro ingresado

 
Vista:
sin imagen de perfil

Generar un número relativamente primo a otro ingresado

Publicado por German (2 intervenciones) el 25/05/2017 03:03:21
Sin-titulo

Necesito saber como generar el valor de C, sólo debo ingresar el valor de x0, k y g. Lo demás ya tengo, sólo no puedo generar C..
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Generar un número relativamente primo a otro ingresado

Publicado por Carlos (35 intervenciones) el 31/05/2017 17:41:05
No entiendo bien el planteamiento, pues es sencillo saber cuándo dos números son primos relativos, pero obtener un primo relativo de un número N, depende mucho de los parámetros de entrada, me explico:

Supongamos que tienes un número N=6, y necesitas obtener P(que sería un primo relativo de N) en este caso un primo relativo inmediato de N seria P=7, dado que entre 6 y 7 el máximo común divisor es 1.

Lo que no comprendo bien en el planteamiento es cuál es el criterio de búsqueda a usar para obtener P,
Lo más sencillo y genérico sería crear un algoritmo que dado N, busque creciente o decrecientemente los números adyacentes y vaya chequeando si ambos números son primos relativos, luego el algoritmo se detendría al encontrar el primer relativo y ese sería tu resultado.

Una manera simple de saber si dos números son primos relativos es:


/*segun las matematicas dos numeros son primos relativos si no tienen otro divisor común más que 1 y -1 por tanto lo que se debe hacer es calcular el maximo divisor común entre dos numeros dados, y luego si el resultado es igual a 1 o a -1, entonces los numeros son primos relativos, de lo contrario, no lo son. */

public static bool EsPrimoRelativo(int numero1, int numero2)
{
//calcular el maximo divisor común
int resto;
while(numero2 != 0)
{
resto = numero1 % numero2;
numero1 = numero2;
numero2 = resto;
}

//si el el resultado es igual a 1 o a -1, son relativos, si no, no.
return numero1 == 1 || numero1 == -1;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar