Algoritmos | Análisis de Algoritmos | Pregunta 19

Considere el siguiente fragmento de programa para invertir los dígitos en un entero dado para obtener un nuevo entero. Sea n = D1D2…Dm

int n, rev; 
rev = 0; 
while (n > 0) 
{ 
   rev = rev*10 + n%10; 
   n = n/10; 
}

La condición invariable del ciclo al final de la i-ésima iteración es: (GATE CS 2004)
(A) n = D1D2….Dm-i y rev = DmDm-1…Dm-i+1
(B) n = Dm-i+ 1…Dm-1Dm y rev = Dm-1….D2D1
(C) n != rev
(D) n = D1D2….Dm y rev = DmDm-1…D2D1

Respuesta: (A)
Explicación: podemos obtenerlo tomando un ejemplo como n = 54321. Después de 2 iteraciones, rev sería 12 y n sería 543.
Cuestionario de esta pregunta

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *