Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 15. Cual es la condición del siguiente ciclo? .Cuando finaliza el ciclo? (Pila1, Pila2, y Descarte son pilas):
- while (!pilavacia(&Pila1)) //Condicion: !pilavacia(&Pila1) El ciclo se sigue ejecutando mientras Pila1 no este vacia.
- {
- apilar (&Pila2, desapilar(&Descarte))
- }
- //El ciclo se sigue ejecutando mientras Pila1 no este vacia.
- 16. Qué realiza el siguiente código escrito en lenguaje C (Pila1, Aux y Result son pilas):
- while (!pilavacia(&Pila1))
- {
- if (tope(&Pila1) == 5)
- {
- apilar (&Aux, desapilar(&Pila1));
- apilar (&Result, desapilar(&Aux));
- }
- }
- /*El codigo analiza si el elemento tope de Pila1 es igual a 5.
- Si lo es lo desapila y lo envia a Aux y luego a Result, desapilandolo de Aux tambien.
- Si el tope deja de ser 5 el ciclo se repite infinitamente.*/
- 17. Para el ejercicio “Cargar por teclado una pila ORIGEN y pasar a la pila DISTINTO todos aquellos elementos que preceden al valor 5
- (elementos entre el tope y el valor 5). No se asegura que exista algún valor 5”, se realizo el siguiente programa:
- // este programa carga por teclado una pila Origen y pasa a la pila Destino todos aquellos elementos que preceden el valor 5
- int main()
- {
- Pila Origen, Distinto;
- inicpila(&Origen);
- inicpila(&Distinto);
- leer(&Origen);
- if (!pilaVacia(&Origen))
- {
- while (tope(&Origen) != 5)
- {
- apilar (&Distinto, desapilar(&Origen));
- }
- }
- }
- a. .Resuelve el problema planteado?// No.
- b. .Cuales son los errores que encuentra?/*Solo carga un elemento en Origem, la funcion Pilavacia esta mal escrita,
- Si la pila se vacia en el while, no lo controla*/
- c. Reescribir el código para que resuelva adecuadamente el problema planteado.
- void main()
- {
- Pila Origen, Distinto;
- inicpila(&Origen);
- inicpila(&Distinto);
- do /*Cargo pila dada*/
- {
- leer(&Origen);
- printf("Si desea ingresar otro elemento ingrese 's'\n");
- fflush(stdin);
- scanf("%c",&ctrl);
- }
- while(ctrl=='s');
- while (!pilaVacia(&Origen)&& (tope(&Origen)!=5))
- {
- apilar (&Distinto, desapilar(&Origen));
- }
- mostrar(&Origen); mostrar(&Distinto)//Control.
- }
- d. Indicar las componentes del programa.//Inicializacion de pila Origen, Procesamiento de pilas, Muestra de Pilas
- 18. Dado el siguiente ciclo (Pila1, Pila2 y Descarte son pilas):
- while ( (!pilaVacia(&Pila1)) && (!pilaVacia(&Pila2)) )
- {
- apilar (&Descarte, desapilar(&Pila1));
- apilar (&Descarte, desapilar(&Pila2))
- }
- a. .Cual es la condición del ciclo? Explique con sus palabras//Que ninguna de las dos pilas esten vacias.
- b. .Cuales son los posibles estados de ambas pilas al finalizar el ciclo? //Pueden estar ambas vacias o una vacia y la otra no.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement