Red de conocimiento informático - Computadora portátil - C, supongamos que x e y son números enteros; escriba un programa para encontrar los últimos tres dígitos de X elevados a la potencia de y.

C, supongamos que x e y son números enteros; escriba un programa para encontrar los últimos tres dígitos de X elevados a la potencia de y.

Si el número es demasiado grande, se desbordará y el resultado definitivamente será incorrecto.

Esta pregunta es una pregunta aritmética y no se puede hacer imprudentemente. Hay reglas a seguir:

El valor de los últimos tres dígitos del producto es sólo el mismo que el de los últimos tres. dígitos del multiplicador y del multiplicando. Depende del número de dígitos y no tiene nada que ver con los dígitos altos del multiplicador y del multiplicando.

No habrá ningún problema para escribir a partir de esto. #include? // Los últimos tres dígitos elevados a la enésima potencia

int?main?()

{

int?x , y,i,last;

last=1; // Recuerda la inicialización

scanf?("%d%d",& amp;x,&y);

para?(i=1;i<=y;i++)

{

último=último*x%1000;

}

if?(last==0)

printf?("%d%d%d%d\n", last,last,last); //Con final de tres ceros.

else

printf?("%d\n",last);

return?;

}