ISRO | CS ISRO 2007 | Pregunta 23

Estudia el siguiente programa:

//precondition: x>=0
public void demo(int x)
{
System.out.print(x % 10);
if (x % 10 != 0)
{
demo(x/10);
}
System.out.print(x%10);
}

¿Cuál de los siguientes se imprime como resultado de la llamada de demostración (1234)?

(A) 1441
(B) 3443
(C) 12344321
(D) 43211234

Respuesta: (D)
Explicación: En el código anterior, se ejecuta la primera declaración de impresión e imprime el valor obtenido después de realizar el módulo de 10 y recursivamente se llama a otra función con el valor dividido por 10. Y tras el retorno de la función, vuelve a imprimir los valores.

demo(1234)
imprime 4 call demo(123)
imprime 3 call demo(12)
imprime 2 call demo(1)
imprime 1 call demo (0)
imprime 1 imprime 2 imprime 3 imprime 4.

Entonces, la opción (D) es correcta.
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 *