Problemas while

Páginas: 2 (265 palabras) Publicado: 6 de diciembre de 2011
Función [log 2(x)]
Demostración de la función log 2(x) es una macro, construyendo el correspondiente “programa while”apoyándome en macros conocidas ( * , + , también detalladas a continuación) : Programa while [log 2(x)] Secuencia de computaciónBegin z := 0; w := 0; v := x - w; while v != 0 do begin z := succ(z); w := w * x; v := x - w; end end

[a ( z, w, v)] Para x = 4:
a1(0 , 1 , 3); Inicialización a2(a1); Entra en el bucle while a3(1, 1, 3); a4(1, 2, 3); a5(1, 2, 2); a6(a5); Entra en elbucle while. a7(2, 2, 2); a8(2, 4, 2); a9(2, 4, 0); a10(a9); No entra en el bucle(v = 0).

Programa while [ x*y]

Begin z :=0; while y != 0 do begin z := z + x; y:= pred(y); end end

[a ( x, y, z)] Para x = 1, y = 2 :
a1(1, 2, 0); Inicializacióna2(a1); Entra en el bucle while. a3(1, 2, 1); a4(1, 1, 1); a5(a4); Entra en el bucle while; a6(1, 1, 2); a7(1, 0, 2); No entra enel bucle(y = 0).

Programa while [x+y]

begin z := x; while y != 0 do begin z := succ(z); y := pred(y); end end

[a ( x,y, z)] Para x = 1, y = 2 :
a1(1, 2, 1); a2(a1); a3(1, 2, 2); a4(1, 1, 2); a5(a4); a6(1, 1, 3); a7(1, 0 , 3); InicializaciónEntra en el bucle while.

Entra en el bucle while. No entra en el bucle(y = 0).

Benjamín Antomil Valledor – UO221658

Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Ejecicios While
  • ciclos do while, while y for
  • Do while
  • While C++
  • Practicas While
  • Break y While
  • for while
  • Programacion while

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS