Necesito el ALGORITMO URGENTE
Publicado por jube (10 intervenciones) el 05/04/2013 20:26:41
hola necesito los algoritmos de los siguientes programas:
cuando me refiero a algoritmos me refiero a:
algoritmo dientes_de_sierra;
x,y: real;
{Pre = x = X}
var k: entero; fvar
si -5 <= x -> k:= 0;
{Inv} {cota = x - 10 * k}
mientras x >= 10 * k + 5 hacer
k:= k+1;
fmientras
[] -5 > x-> k:=............;
{ Inv'} {cota...}
mientras 'condición de continuación’ hacer
'avanzar'
fmientras
fsi;
{Q = x = X and 10 * k - 5 <= x < 10 * k +5}
y:= (3/5) * (x-10* k)
{Post = y = f(x) and x = X}
falgoritmo
8. Raíz aproximada
Dada la especificación
n, r: entero:
{Pre = n = N and N>= 1}
raíz-aproximada
{Post = r^3 < N < (r + 1)^3}
Deriva un algoritmo basado en un único bucle que resuelva el problema. Se debe
utilizar como invariante para el bucle el predicado siguiente
Inv = r^3 < N and n = N and a = (r +1)^3 and b = (r + l)^2
Para este ejercicio, no está permitido el producto de dos variables, pero sí está
permitido el producto de una constante por una variable. Por ejemplo no está
permitido x*x ni x*x*x, pero sí está permitido 2 * x ó 3 * x.
Da una función de cota.
9. Ackermann inferior
Sea la función de Ackermann A. definida sobre los números naturales
A(0) = 1
A(i) = 2 * A(i div 2) , para i par e i > 0
A(i) = (i div 2) + A(i - 1) , para i impar e i > 0
Diseña mi algoritmo con un solo bucle que resuelva el siguiente problema
n, i: entero;
{Pre = n = N and 1 < N < 99}
rango
{Posí = n = N and A(i) <=n< A(i + 1)}
Siendo el invariante del bucle el predicado siguiente
Inv = n = N and A(i) <= n and f = A(i+ 1) and (Vj : 0 <= j <= i : t [j] = A(j))
Teniendo en cuenta que i <=A(i), se ha dispuesto una tabla auxiliar
t: tabla[0..99] de entero
para guardar los valores de la función A que se han calculado en anteriores itera-
ciones.
Da una función de cota.
creo ke estan bien copiadas en caso contrario avisad. muchas gracias por adelantao
cuando me refiero a algoritmos me refiero a:
algoritmo dientes_de_sierra;
x,y: real;
{Pre = x = X}
var k: entero; fvar
si -5 <= x -> k:= 0;
{Inv} {cota = x - 10 * k}
mientras x >= 10 * k + 5 hacer
k:= k+1;
fmientras
[] -5 > x-> k:=............;
{ Inv'} {cota...}
mientras 'condición de continuación’ hacer
'avanzar'
fmientras
fsi;
{Q = x = X and 10 * k - 5 <= x < 10 * k +5}
y:= (3/5) * (x-10* k)
{Post = y = f(x) and x = X}
falgoritmo
8. Raíz aproximada
Dada la especificación
n, r: entero:
{Pre = n = N and N>= 1}
raíz-aproximada
{Post = r^3 < N < (r + 1)^3}
Deriva un algoritmo basado en un único bucle que resuelva el problema. Se debe
utilizar como invariante para el bucle el predicado siguiente
Inv = r^3 < N and n = N and a = (r +1)^3 and b = (r + l)^2
Para este ejercicio, no está permitido el producto de dos variables, pero sí está
permitido el producto de una constante por una variable. Por ejemplo no está
permitido x*x ni x*x*x, pero sí está permitido 2 * x ó 3 * x.
Da una función de cota.
9. Ackermann inferior
Sea la función de Ackermann A. definida sobre los números naturales
A(0) = 1
A(i) = 2 * A(i div 2) , para i par e i > 0
A(i) = (i div 2) + A(i - 1) , para i impar e i > 0
Diseña mi algoritmo con un solo bucle que resuelva el siguiente problema
n, i: entero;
{Pre = n = N and 1 < N < 99}
rango
{Posí = n = N and A(i) <=n< A(i + 1)}
Siendo el invariante del bucle el predicado siguiente
Inv = n = N and A(i) <= n and f = A(i+ 1) and (Vj : 0 <= j <= i : t [j] = A(j))
Teniendo en cuenta que i <=A(i), se ha dispuesto una tabla auxiliar
t: tabla[0..99] de entero
para guardar los valores de la función A que se han calculado en anteriores itera-
ciones.
Da una función de cota.
creo ke estan bien copiadas en caso contrario avisad. muchas gracias por adelantao
Valora esta pregunta


0