You are on page 1of 6

6/02/2016

Matemticas Revisin

COMPANY
LOGO

Matemticas preliminares
1

Funciones Piso y Techo

Logaritmos

Sumas y notacin de sumatorias

Factorial

Resto en la divisin entera

5
D.A.I. A l g o r i t m i c a I I I

J. C. Carbajal L.

Definicin: Piso y Techo

COMPANY
LOGO

El piso de un nmero real x, denotado por


entero ms grande que es menor o igual a
techo de un nmero real x, denotado por ,
entero ms pequeo que es ms grande o igual

es el
x. El
es el
a x.

= ,

Funciones Piso y Techo

COMPANY
LOGO

Las funciones de piso (floor) y techo (ceiling) le dan al


entero ms cercano hacia arriba o hacia abajo.

Ejemplo: Cul es el piso y el techo de 2.31?

El piso (floor) de 2.31 es 2

El techo (ceiling) de 2.31 es 3


D.A.I. A l g o r i t m i c a I I I

Hechos de piso y techo

J. C. Carbajal L.

COMPANY
LOGO

Sean y nmeros reales. Sean , , y nmeros


enteros:
< + 1; , 1 <
1 < ; , < + 1

= ,

< + 1, = , ,
1 < , =

Ejemplos:
2.7 = 2; 0.07 = 0; 2.7 = 3; 2 = 2

1 = 1 ; , 1 = (1)

2.7 = 3; 0.07 = 1; 2.7 = 2; 2 = 2


D.A.I. A l g o r i t m i c a I I I

Hechos de piso y techo

J. C. Carbajal L.

COMPANY
LOGO

= ; =
Pero en general,
; , ;
+ + ; , + +

+
=
2
2
+1

=
; ,
+1=
2
2
2
2

D.A.I. A l g o r i t m i c a I I I

Ejm: Bsqueda binaria

J. C. Carbajal L.

COMPANY
LOGO

Considerar que sucede en una bsqueda binaria en


un sub arreglo [ . . ]
While (first<=last && !found)
{
int mid = (first + last)/2;
if (target < a[mid])

Considerar un sub arreglo [ .. ] de un


arreglo , donde 0 . Sea la longitud
del sub arreglo, y sea la cantidad ( +
) 2. Entonces:
D.A.I. A l g o r i t m i c a I I I

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

J. C. Carbajal L.

6/02/2016

Ejm: Bsqueda binaria


a)

es el valor de la expresin + 1

b)

la longitud del sub arreglo [. . ] es

c)

la longitud del sub arreglo [. . 1] es

la longitud del sub arreglo [ + 1. . ] es

d)

2
2

Algoritmo en C++

COMPANY
LOGO

1=

1
2

COMPANY
LOGO

Ejemplo: Asumir que el valor de la variable n es un


entero positivo. Cuando el bucle es ejecutado,
Cuntas veces ser ejecutado el cuerpo del
bucle? Expresar su respuesta como una frmula
matemtica en trminos de la variable n.
int k;
for (k=1; (3*k)+1<=n; ++k)
cout << k << endl;

D.A.I. A l g o r i t m i c a I I I

Algoritmo en C++

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

Logaritmos

Algoritmo en C++

COMPANY
LOGO

Solucin:
Primero notar que el valor inicial calculado de
(3*k)+1=4, asi que el valor de n=3 o menos, el cuerpo
del bucle ser ejecutado 0 veces. As, ahora ahora
veremos el caso cuando n es al menos 4. En estos casos
el cuerpo del bucle ser ejecutado al menos una vez.
Desde que la variable k empieza en 1, e incrementado
en 1 cada vez que el cuerpo del bucle es ejecutado, k
es el contador del bucle. Esto es cuando su valor es 1,
la instruccin cout es ejecutado por primera vez,
cuando k=2, cout se ejecuta por segunda vez, etc. Sea
L el valor de k en la instruccin cout la ltima vez que
el cuerpo del bucle es ejecutado. Entonces el nmero L
es el nmero total de veces que el cuerpo del bucle es
ejecutado. Esto es, L es nmero que deseamos calcular.

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

Sea n el valor de la variable n del programa. Entonces 3 +


1 , cuando k tiene el valor de L, la condicin de control
del bucle debe ser verdadera. Tambin notar que cuando k
es entonces incrementado a L+1 la condicin del bucle
entonces debe ser falsa para hacer que el bucle termine.
Asi 3 + 1 + 1 > . Ahora tendremos dos inecuaciones que
involucra a L y n:
3 + 1 < 3 + 1 + 1
Restando 1, y luego dividiendo entre 3, tendremos:
1

<+1
3
Se sigue que el entero L debe ser el piso de la fraccin
1
( 1) 3. Esto es, =
. Este es el nmero de veces que
3
el cuerpo del bucle es ejecutado cuando 4. De hecho,
esta frmula tambin da el nmero de veces, cuando n es 1,
2, 3.

J. C. Carbajal L.

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

Logaritmos

COMPANY
LOGO

Para un nmero real > 1, la funcin logaritmo en base


esta definida sobre un nmero positivo real como sigue;
log = la potencia sobre que produce . En otras
palabras, log = = .
Propiedades

Sea n un entero positivo:

log = ; , > 0
log = ; ,

c)

log( + 1) = 1 + log ; 1

d)

log 2 = 1 + log ; 2

e)

log 2 = 1 + log ; 2

log =

log
log

log = ln =
1

1
; > 0; 2.71828

D.A.I. A l g o r i t m i c a I I I

J. C. Carbajal L.

COMPANY
LOGO

COMPANY
LOGO

a) 2 log < 2 log +1 ; , < 2 log


2

b)

log

= 1; ,

log +1

=0

Ejemplo: Mostrar como se calcula el valor de log 1500 sin


usar una calculadora.
Solucin:
210 = 1024 < 1500 < 2048 = 211 , 10 <
log 1500 < 11; log 1500 = 10

D.A.I. A l g o r i t m i c a I I I

J. C. Carbajal L.

6/02/2016

Logaritmos

Ejemplo: El bloque de cdigo en C++ mostrado


abajo, asume que la variable n tiene un valor
positivo entero. Cuando el cdigo es ejecutado,
cuantas veces el cuerpo del bucle es ejecutado?
Expresar la respuesta en trminos del valor de n.
int k = 1;
int k, p;
for (k=1, p=2; p<=n; p *= 2)
{
cout << k << endl;
++k;
}
D.A.I. A l g o r i t m i c a I I I

Logaritmos

sumas y notacin de sumatoria

Primero considerar el caso especial donde n=1. En este


caso, el cuerpo del bucle se ejecuta 0 veces. Ahora, veamos
el caso donde el valor de n es al menos 2, el cuerpo del
bucle ser ejecutado al menos una vez. La variable k es el
contador del bucle. Sea L el valor de k el valor de k en la
instruccin cout la ltima vez que el cuerpo del bucle es
ejecutado. Entonces L es el nmero que deseamos calcular.
Cuando el cuerpo del bucle es ejecutado el valor inicial de k
= 1 es enviado a la salida y entonces k es incrementado a 2.
Seguidamente el valor de p es doblado a 4 (=22 ) y entonces
la condicin de control del bucle p<=n es probado. Si es
encontrado verdad, entonces k=2 es enviado a la salida, y se
incrementa k=3, y p es doblado 8 (= 23 ). Otra vez la
condicin del bucle es probado.

sumas y notacin de sumatoria

10

=1

J. C. Carbajal L.

sumas y notacin de sumatoria

() = + + 1 + + ()
=

J. C. Carbajal L.

( + 1)
=1

D.A.I. A l g o r i t m i c a I I I

D.A.I. A l g o r i t m i c a I I I

2 1 ; /

COMPANY
LOGO

El valor numrico representado por esta expresin es


exactamente el valor que debera ser producido en la
variable sum por la ejecucin del siguiente fragmento
de cdigo C:
sum =0;
for (k=m; k <=n; ++k)
sum += f(k);
En particular, por convencin = () = 0; < .

COMPANY
LOGO

Ejemplo: Dada la suma


1 2 + 2 3 + 3 4 + 4 5 + 5 6 + + 9 10,
En que casos los trminos perdidos son:
42 + 56 + 72 = 6 7 + 7 8 + 8 9
Es til tener una notacin que exprese la suma de
una manera ms precisa que elimine el trabajo
anterior. La notacin sigma fue inventada para
este propsito. Las dos sumas dadas arriba pueden
ser escritas de una de estas maneras:

J. C. Carbajal L.

Ms generalmente, suponer que la funcin real ()


esta definida sobre el entero en el rango , . . , . La
expresin

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

COMPANY
LOGO

Cuando k llega a tener el valor de L, la variable p entonces


tendr el valor de p = 2 . Y la condicin de control del bucle
ser verdadera por ltima vez. El nmero L es enviado a la
salida y luego es incrementado a L+1, y p = 2+1 . La
condicin de control del bucle ahora es falsa. Si n denota el
valor de la variable n del programa, la siguiente inecuacin
debe ser verdadera:
2 < 2+1
log2 < + 1
Esto significa que = log 2 . Este es el nmero de veces
que el cuerpo del bucle es ejecutado. Notar que esta
frmula es igualmente valida cuando n=1, para este caso
log2 = 0.

COMPANY
LOGO

Solucin:

J. C. Carbajal L.

Continua la solucin:

D.A.I. A l g o r i t m i c a I I I

Logaritmos

COMPANY
LOGO

COMPANY
LOGO

Para cualquier entero positivo tenemos:


( + 1)
1 +2 +3 + + =
2
Mas generalmente, para cualquier entero y que
satisfacen tenemos
+
+ + 1 + + 2 + + = ( + + 1)
2
Para todo nmero real y un entero no negativo

=
=0

D.A.I. A l g o r i t m i c a I I I

1 +1
; 1;
1+
+ 1; = 1.

J. C. Carbajal L.

6/02/2016

COMPANY
LOGO

sumas y notacin de sumatoria

Un rbol binario perfecto es uno en el que cada nodo


no tiene hijos o tiene 2 hijos, y todas las hojas del
rbol estn al mismo nivel. En otras palabras, todos
los niveles estn completamente llenos.
a)

Cuntos nodos hay en el nivel k de un rbol


binario perfecto?

b)

Cuntos nodos hay en una rbol binario perfecto


con niveles 0, 1, 2, , n?

c)

hacer las partes (a) y (b) otra vez, esta vez con
un rbol binario perfecto, es decir, un rbol en el
que cada nodo no hoja tiene 3 hijos, y todas las
hojas estn en el mismo nivel.

Sea () una funcin estrictamente decreciente


definida sobre un intervalo [, ], donde y son
enteros tales que m<n. Entonces

<

a) 2
b) 20 + 21 + 22 + + 2 =
c) 3 ;

<

3+1 1
2

J. C. Carbajal L.

COMPANY
LOGO

Para todo entero positivo y nmero real 1,


1 + +1 ( + 1)
1 + 2 + 3 2 + + 1 =
( 1)2

Para todo entero positivo ,

< +
=

= 2+1 1

sumas y notacin de sumatoria

Similarmente, si () es estrictamente creciente


sobre [, ], entonces
+

2+1 1
21

D.A.I. A l g o r i t m i c a I I I

COMPANY
LOGO

sumas y notacin de sumatoria

Solucin:

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

COMPANY
LOGO

sumas y notacin de sumatoria

< +

log = log + + 1 2 log +1


=2

log = ( + 1) log( + 1) + 2 2 log(+1) +1


=2
J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

COMPANY
LOGO

sumas y notacin de sumatoria

Solucin:

a) 1 + 2 2 + 3 22 + 4 23 + + 10 29

Tomar

b)

a) 1 + 2 2 + 3 22 + 4 23 + + 10 29
t=2

1+ +1 (+1)
;
(1)2

+3 ++
(exprese
respuesta en trminos de y )

c) t + 2

su

b)

n=10,

entonces

La suma es 1 + 2 1 2 + 3 1 2
6
210

J. C. Carbajal L.

1 + 2 + 3 2 + + 1 =
1+10211 (11)210
(21)2

= 9217

11 +1
=0 2

1+12 1 2 13 13 1 2 12

D.A.I. A l g o r i t m i c a I I I

COMPANY
LOGO

sumas y notacin de sumatoria

Ejemplo: Para cada una de las siguientes sumas,


evaluarlas o expresarlas en forma cerrada
11 +1
=0 2

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

1 2 1
13

= 4 1 + 12

+ + 12 1 2

213

13

212

11

=4+

210 = 4 1024 4 0 0.007 = 3.993


D.A.I. A l g o r i t m i c a I I I

J. C. Carbajal L.

6/02/2016

sumas y notacin de sumatoria

COMPANY
LOGO

Solucin:

sumas y notacin de sumatoria

COMPANY
LOGO

Ejemplo: Considere el siguiente par de bucles


anidados:

c)t + 2 2 + 3 3 + +
1 + 2 + 3 2 + + 1
+ +2 + 1 +1
=
; si t 1.
1 2
= 1.

int j, k;
for (k=2; k<=50; ++k)
for (j=1; j<k; ++j)
cout << hola << endl;
Exactamente, cuntas veces, la palabra hola
ser enviada a la salida por el bloque de cdigo
mostrado arriba?

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

sumas y notacin de sumatoria

Factorial

La funcin factorial esta definida sobre los


nmeros enteros no negativos como sigue:
0! = 1, 1! = 1,
! = 1 2 3 1 ; 2
Alternativamente, uno puede definir el factorial
recursivamente como sigue:
0! = 1, ! = 1 ! , 1.
Para todos los enteros 2,
ln + 1 < ln ! < + 1 ln + 1
Para todos los enteros > 1,

< ! <

Residuos en la divisin entera

J. C. Carbajal L.

COMPANY
LOGO

Sea cualquier entero y sea un entero


estrictamente positivo. Entonces el residuo de
dividido por (tambin llamado el residuo de
) esta definido por el entero

Ejemplo: 27 12 = 3

porque 27 12

D.A.I. A l g o r i t m i c a I I I

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

COMPANY
LOGO

Frmula de Stirling: n!
2 para todos
los valores grandes de n. Ms precisamente,
!
lim
=1
2

COMPANY
LOGO

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

Factorial

COMPANY
LOGO

Solucin:
Cuando k=2 en el bucle exterior, el bucle interior
entonces imprimir hola solo una vez porque j=1 y
entonces el cuerpo del bucle es ejecutado solo
mientras j<2. A continuacin k=3 en el bucle exterior;
entonces el bucle interior imprimir hola dos veces.
Seguidamente k=4 en el bucle externo, entonces el
bucle interior imprimir hola tres veces. Etc. Cuando
k=50, entonces el bucle interior imprimir hola 49
veces. Entonces k es incrementado una vez ms, pero
ahora el bucle externo termina. El nmero total de
veces que hola es enviado a la salida es 1 + 2 + 3 +
4950
+ 49 =
= 1225

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

27
12

D.A.I. A l g o r i t m i c a I I I

= 27 12 2.25 = 27 12 2 = 3

J. C. Carbajal L.

6/02/2016

Residuos en la divisin entera

COMPANY
LOGO

Para todo los enteros y y el entero positivo


,
+ mod = mod

Teorema de la divisin.- Para cada entero y


entero positivo , existe un nico entero y
tal que = + ; 0 < .

Residuos en la divisin entera

COMPANY
LOGO

Sea a y b nmeros enteros, y sea m un entero


positivo, entonces:

( + ) = (( ) + ( ))
( ) = ( ( ))
() = (( ) ( ))

Ejemplo:
752 mod 11 = 75 mod 11 75 mod 11
9 9 mod 11 = 81 mod 11 = 4.
D.A.I. A l g o r i t m i c a I I I

J. C. Carbajal L.

D.A.I. A l g o r i t m i c a I I I

mod 11 =
J. C. Carbajal L.

You might also like