Problema 1
|
Sea V un vector de n coordenadas y k un natural menor o igual que n.
Escribir
un programa que:
A- Ingrese
los valores de las variables k y n, los elementos de V y el orden en que
éstos aparecen en el vector.
B- Ordene
los elementos de V en un nuevo vector W de manera que:
W(k) >
W(j) si j <k
W(k) <
W(j) si j >k
|
Problema 2
|
Una palabra es anagrama de otra cuando se obtiene una de la otra por permutación de sus letras. Por ejemplo:
pote es
anagrama de tope
saco es
anagrama de cosa y de ocas
porta es
anagrama de topar, de tropa y de parto
Escribir
un programa que: dado un diccionario castellano pueda determinar los
conjuntos de anagramas.
Por
ejemplo:
Si en el
diccionario sólo tuviésemos las palabras:
cava
empresa
pote
torta
tope
trota
vaca
los
conjuntos de anagramas serían:
cava -
vaca
empresa
pote -
tope
torta -
trota
Comentario:
La palabra INSTITUCIONALIZACIÓN tiene 20 letras, por lo tanto hay 19!/3
permutaciones posibles. Si suponemos que "procesar" cada
permutación tarda 1 segundo, nos llevaría más de 10 años
"procesarlas" todas. Entonces, hay que buscar con cuidado una
solución. Es importante, además, tener en cuenta que un diccionario
castellano tiene aproximadamente 75000 palabras.
|
Problema 3
|
Para un palabra dada encontrar todos sus anagramas. |
Problema4
|
Dado un conjunto de N números cualesquiera, un número T y un entero K, cuán rápido puede Ud. determinar si existe un subconjunto de K elementos cuya suma es, a lo sumo, T? |
Problema 5
|
Dado un vector V de N (N > 1) componentes y un entero positivo M < N
V =
[a(1),a(2),...,a(M),a(M+1),...,a(N)]
escribir
un programa que lo lleve a la forma:
W =
[a(M+1),a(M+2),...,a(N),a(1),...,a(M)]
o sea, si
consideramos:
A =
[a(1),a(2),...,a(M)] B = [a(M+1),a(M+2),...,a(N)]
podemos
pensar que se trata de llevar el vector
V = AB
a la forma
W = BA
Nota:
Ningún otro vector adicional podrá usarse y deberá hacerse la menor cantidad
de reordenamientos de los elementos de V. Llamamos "reordenamiento"
a cada sentencia en la que se han intercambiado dos elementos de V.
|
Problema 6
|
Con la notación del problema anterior, escribir un programa que a un vector
V = ABC
lo lleve a
la forma W = CBA
|
Problema7
|
Sea P(x) = -x4 - x3 + 1, observemos que:
P(-1) = -1
+ 1 + 1 = 1 > 0
P(1) = -1
- 1 + 1 = -1 < 0
los
matemáticos, mediante el llamado "Teorema del Valor Intermedio" han
probado que entre -1 y 1 debe existir una raíz de P, o sea, un número c tal
que P(c) = 0.
Escribir
un programa de manera de determinar c con un error menor que 10-2.
Comentario:
El teorema a que hacemos referencia vale en un contexto más general, pues
afirma que:
si f:[a,b]
--> R es una función continua y f(a) < f(b) o bien f(a) > f(b), dado
cualquier valor d entre f(a) y f(b), existe c entre a y b tal que
f(c) = d
|
Problema 8
(Los puentes de Konisberg) |
Por la ciudad de Konisberg pasa un río en el que se encuentran dos islas, A y B, conectadas por un puente. En la isla A hay dos puentes que la unen con la margen izquierda y dos que la unen con la derecha. En la isla B hay un sólo puente que la une con la margen izquierda y uno sólo con la margen derecha. Quedan en total 7 puentes. El problema consiste en determinar si se puede dar un paseo caminando de manera de pasar por cada puente exactamente una vez. |
Problema9
|
Para un número positivo a distinto de 1 y para un número b positivo cualquiera se define el "logaritmo en base a de b" (loga(b)) mediante la relación siguiente:
loga(b) =
x si y sólo si ax = b
La
importancia del logaritmo radica en las siguientes propiedades:
loga(b.c)
= loga(b) + loga(c) para b > 0 y c > 0
loga(bc) =
c.loga(b) para b > 0
loga(b/c)
= loga(b) - loga(c) para b > 0 y c > 0
Escribir
un programa que permita el ingreso de un número natural n y encuentre el
mayor entero menor o igual que log2(n).
(Ayuda: Si
1 < b < 2 entonces 0 < log2(b) < 1
Para n
> 1, log2(n) = 1 + log2(n/2))
|
Problema 10
|
Los Laboratorios Bell de E.E.U.U. encargaron a Michael Lesk desarrollar un sistema para ubicar telefónicamente a las personas que estaban vinculadas con ellos. Lo que se hizo fue lo siguiente: Como en el teléfono se tienen los números 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 y los símbolos * y #, se puede asignar a cada uno las letras del alfabeto de la siguiente manera:
2 ---------- A, B, C
3 ---------- D, E, F
4 ---------- G, H, I
5 ---------- J, K, L
6 ----------
M, N, Ñ, O
7
---------- P, Q, R, S
8
---------- T, U, V
9
---------- W, X, Y, Z
reservando
el 0 para llamar a la operadora. Para llamar a Gómez, Juan se debe marcar el
código:
4 6 6 3 9
* 5 *
(El
símbolo * denota que ha terminado el apellido y lo que sigue indica la
inicial del nombre)
|
0 comentarios:
Publicar un comentario