Las siguientes dos funciones P1 y P2 que comparten una variable B con un valor inicial de 2 se ejecutan simultáneamente.
P1() { C = B – 1; B = 2*C; } P2() { D = 2 * B; B = D - 1; }
El número de valores distintos que B puede tomar posiblemente después de la ejecución es
(A) 3
(B) 2
(C) 5
(D) 4
Respuesta: (A)
Explicación: Existen las siguientes formas en que pueden seguir los procesos concurrentes.
C = B – 1; // C = 1 B = 2*C; // B = 2 D = 2 * B; // D = 4 B = D - 1; // B = 3 C = B – 1; // C = 1 D = 2 * B; // D = 4 B = D - 1; // B = 3 B = 2*C; // B = 2 C = B – 1; // C = 1 D = 2 * B; // D = 4 B = 2*C; // B = 2 B = D - 1; // B = 3 D = 2 * B; // D = 4 C = B – 1; // C = 1 B = 2*C; // B = 2 B = D - 1; // B = 3 D = 2 * B; // D = 4 B = D - 1; // B = 3 C = B – 1; // C = 2 B = 2*C; // B = 4
Hay 3 valores posibles diferentes de B: 2, 3 y 4.
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