Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Algoritmos y Estructuras de Datos
Algoritmos y Estructuras de Datos
Introduccin
La lgica es, adems de una ciencia, un lenguaje formal que nos permite realizar
razonamientos formalmente correctos.
Observamos que la conclusin se infiere sin ninguna duda de las premisas consideradas. Esta
es la caracterstica de un razonamiento deductivo: La conclusin se infiere de las premisas, por
lo que es absolutamente imposible que de premisas verdaderas pueda inferirse una
conclusin falsa.
En este caso, la conclusin referida a un caso particular se infiere de dos premisas, una de las
cuales es una regla general.
En el razonamiento inductivo, en cambio, las premisas no son concluyentes, sino que pretenden
otorgar algo de fundamento a la conclusin. Por supuesto, esto implicar que hay mejores o peores
razonamientos inductivos, ya sea que las premisas den ms o menos fundamentos.
conclusin tambin
la conclusin "brilla con luz propia", se obtiene necesariamente de las premisas anteriores. Si
agrego que "el perro de mi vecino se llama Sirio", "Sirio es una estrella roja" y "Sirio pertenece a la
constelacin del Can Mayor", el razonamiento no ser "ms vlido" y, por cierto, la conclusin no se
alterar en lo ms mnimo.
La cosa cambia cuando se trata de un razonamiento inductivo: Al agregarse premisas, estas
pueden agregar o restar fundamento a la conclusin obtenida.
Consideremos el ejemplo:
Sin embargo, podemos tener razonamientos vlidos con premisas y conclusiones falsas.
Veamos lo que sigue:
Es ridculo, pero se trata de un razonamiento vlido, porque si las premisas fueran verdaderas,
la conclusin tambin lo sera. Qu queremos decir con esto?
Que el hecho de que un razonamiento sea vlido no nos garantiza la verdad de la conclusin,
as como un razonamiento no vlido no es condicin para que la conclusin sea falsa. En este ejemplo
tenemos premisas y conclusiones verdaderas, y estamos en presencia de un razonamiento invlido,
como por ejemplo:
las premisas son verdaderas y la conclusin es falsa, por lo que estamos en presencia de un
razonamiento invlido.
Ejercitacin: Gua de ejercicios N 1. Parte 2
1.4. Proposiciones
Decimos que una proposicin es una oracin declarativa, de la cual podemos afirmar que es
verdadera o falsa.
Podemos decir: la Luna es un queso Mar del Plata flotando en el cielo. Dicha oracin es falsa
sin lugar a dudas. O La molcula de agua est formada por dos tomos de hidrgeno y uno de
oxgeno, que es decididamente verdadera.
Por qu son proposiciones? Porque podemos afirmar que son verdaderas o falsas sin lugar a
dudas. Esto es poseen un valor de verdad.
Podemos dar una orden o hacer una pregunta. Ni una ni otra son verdaderas o falsas.
Tens hora?
Cerr la puerta
No son proposiciones.
A toda proposicin se le puede asignar un valor de verdad, que puede ser verdadero o falso.
Las proposiciones pueden sen atmicas o moleculares:
La Tierra es un planeta es una proposicin atmica.
La tierra es un planeta y gira alrededor del sol en realidad, son dos proposiciones unidas por la
partcula y.
Los conectivos lgicos (y, o, entonces), llamados tambin operadores lgicos, son los vocablos que
permiten enlazar dos o ms proposiciones atmicas.
Las proposiciones atmicas las simbolizamos con las letras P, Q, R, S, T, A, B.
P= Hoy es sbado
Q= Pi es un nmero irracional
1.5. Operaciones lgicas.
El valor de verdad de una proposicin compuesta depende del valor de verdad de cada proposicin
simple que la compone, y del tipo de operador empleado.
Negacin
La negacin de una proposicin hace que cambie su valor de verdad.
Si P = La luna es un satlite (V), la negacin ser
Simbolizamos: ~
Conjuncin:
Dos enunciados pueden combinarse mediante la letra y para formar una proposicin
compuesta: la CONJUNCIN de los dos primeros.
P = La luna es un satlite
Simbolizamos: ^
Q = La tierra es un planeta
P ^ Q = La luna es un satlite y la tierra es un planeta.
Simbolizamos: v
Implicacin (o Condicional):
Dadas P y Q, se llama CONDICIONAL de P y Q a la proposicin compuesta si P entonces Q.
P = Hoy es martes
Q = Hoy tenemos matemtica
P Q = Si hoy es martes, entonces tenemos matemtica
Entonces, un problema es resuelto a travs de una serie de acciones que respetan una secuencia y
que modifican el ambiente hasta la solucin del problema
Tomado el problema anterior, puede escribirse el siguiente algoritmo:
Repetir
Tomar caramelo de la bolsa
Darlo a nio
Hasta que la bolsa contenga menos de cuatro caramelos.
Los objetos son:
Y la accin:
caramelos
Nio
Tomar de la bolsa
Y adems hay una condicin dentro de una estructura. Esta estructura repetir-hasta que,
hace que la mquina evale si hay menos de 4 caramelos en la bolsa antes de retirarlos.
Esto es un Algoritmo.
Un algoritmo es una secuencia ordenada de acciones (llamadas acciones primitivas) que pueden ser
ejecutadas por una mquina y que dan la solucin a un problema dado.
Veamos otro ejemplo:
Necesito que una mquina calcule la suma de dos nmeros, y que me la muestre.
Los objetos son los dos nmeros: Puedo guardarlos en A y B, y otro objeto para guardar la suma.
Las acciones primitivas sern: LEER y ESCRIBIR
Entonces, tendremos el siguiente algoritmo:
LEER A;
LEER B;
S = A + B;
ESCRIBIR S;
1
Caractersticas de un algoritmo:
Cuando se habla de disear soluciones utilizando una computadora, pueden disearse buenas
soluciones o malas soluciones.
Qu caractersticas debe tener un algoritmo para transformarse en una buena solucin?
Debe ser finito: Es decir, debe terminar en alguna parte. El nmero de instrucciones debe ser
limitado.
Legible: Fcil de leer y de entender
Modificable: Debe permitir la actualizacin sin grandes dificultades.
Debe ser eficiente: Para ello debe cumplir con los requisitos de rapidez y economa.
Modular: Siempre que sea posible, debe poder dividirse en subprogramas para su mejor solucin.
Algoritmo y programa:
Antes dijimos que un algoritmo es una serie ordenada de pasos que se realizan para llegar a
una solucin. Qu relacin tiene con un programa?
Podemos decir que un programa es un algoritmo expresado en un lenguaje que tanto la
computadora como el programador puedan entender.
Ejercitacin
1. Disear un algoritmo para cambiar una lamparita que se encuentra en un artefacto suspendido
del techo.
Ambiente:
lamparita quemada
lamparita nueva
escalera
Acciones
poner lamparita
sacar lamparita
Condiciones:
La prctica la realizaremos con un software llamado PseInt (Pseudo Intrprete), que fue desarrollado
por Pablo Novara, un estudiante de la Universidad Nacional del Litoral.
Para bajar el software, e instalarlo en la computadora: http://pseint.sourceforge.net/
Supongamos el problema del ejemplo anterior: Calcular una suma cualquiera.
Adems de que se deben ingresar los valores, y que hay que hacer una operacin (cuenta, en
este caso), se estn manipulando objetos.
Vale decir que se modifica el ambiente, a travs de instrucciones y operaciones.
Entonces, bsicamente en un algoritmo tendremos:
Datos
Instrucciones
Operaciones.
En este captulo nos ocuparemos de los DATOS, y hay varias clases de datos....
Los datos deben ser de un determinado tipo. Un dato puede ser un simple carcter, tal como b o un
valor entero tal como 35.
Entonces, tendremos los siguientes tipos:
Numricos: Son nmeros con los cuales podemos hacer operaciones aritmticas. Por ejemplo: 34,
7.89; 899876
Dentro de los datos numricos hay distintas categoras:
Enteros
Cortos
(detalladas en el apndice 1)
Largo
De punto flotante (con coma)
Simple
Doble
Alfanumricos (tambin llamados cadenas o strings): Son letras y nmeros. Pueden ser palabras
o conjunto de palabras o nmeros teniendo en cuenta que si se consideran alfanumricos no tendrn
valor.
A=30
B=20
Sup <-(A*B)/2
ESCRIBIR sup
Esto sirve para un tringulo de 20 cm de altura y 30 de base. Si queremos que nuestro
algoritmo sirva para todos los tringulos, no podramos dar valores para A y B hasta que se ponga
en marcha el programa. En ese caso, sera:
LEER A;
LEER B;
Sup<-(A*B)/2;
ESCRIBIR sup;
De esta manera los valores A y B cambian segn el tringulo.
A estos objetos (A y B) se los llama variables.
Una variable es un objeto cuyo valor puede variar, y que posee adems los siguientes atributos:
Un nombre que lo designa (o identificador)
Un tipo
Un rango mximo y mnimo (o sea, los valores que puede almacenar)
Cuando se crea una variable se debe especificar su nombre y su tipo.
DEFINIR una variable es crearla, informar a la mquina que existe y que tiene un tipo determinado.
El nombre de las variables: Existen algunas reglas para crear el nombre de las variables:
Deben comenzar con una letra
No pueden contener espacios ni caracteres especiales.
Es conveniente que se refieran al tem que van a almacenar (esto es: que sean nemotcnicas), para
favorecer la comprensin del algoritmo. Es decir que si una variable va a contener el dato sueldo, no
es conveniente que se llame pepe
Son ejemplos de nombres de variables: A20, Ancho, Sup_rectngulo
Seran nombres incorrectos: 1WE; Sup rectngulo; tanto%
Constantes
Adems, podemos encontrarnos con distintos elementos que no cambian su valor a lo largo
de todo el algoritmo.
En la frmula de permetro del crculo,
Per = pi* d (d es el dimetro)
Pi no cambia su valor, por lo tanto es una constante.
Ejercicios
1. De los siguientes datos, determinar su tipo:
23
30-899762577-8
789
Biblioteca Nacional
89+7
90
Ugarte 78
Edad
2. Escribir 2 ejemplos de datos numricos enteros cortos, dos numricos enteros largos, dos simples y
dos alfanumricos.
3. Determinar si las siguientes son constantes o variables.
Das de la semana
Edad
Sueldo
Nombre de una galaxia
4+6
Apellidos
nmero de meses del ao
numero de colores del arcoiris
5. Completar la siguiente tabla:
Es variable o
De qu tipo?
Rango de variabilidad
constante?
Sup. De un tringulo
Su nombre
Nmero de huesos del
cuerpo humano
Un hueso del cuerpo
La direccin del colegio
Nombre de presidente
Valor del dlar
Estos son:
+
*
/
Mod
^
Ejemplos:
Expresin
7/2
12 mod 7
4 +2*5
Valor
(constante o variable)
Suma
Resta
Multiplicacin
Divisin
Mdulo (residuo de la divisin entera)
Potencia
Resultado
3.5
5
14
Todas las expresiones entre parntesis se evalan primero. Las expresiones con parntesis
anidados se evalan de dentro a fuera, el parntesis mas interno se evala primero.
o Dentro de una misma expresin los operadores se evalan en el siguiente orden.
1.- ^ potencia, raz
2.- *, /, mod (Multiplicacin, divisin, modulo).
3.- +, - Suma y resta.
o Los operadores en una misma expresin con igual nivel de prioridad se evalan de izquierda a
derecha.
Ejemplos:
4 + 2 * 5 = 14
23 * 2 / 5 = 9.2
3 + 5 * (10 - (2 + 4)) = 23
3.5 + 5.09 - 14.0 / 40 = 5.09
o
Operaciones relacionales:
Se utilizan para establecer una relacin entre dos valores.
Compara estos valores entre si y esta comparacin produce un resultado de certeza o falsedad
(verdadero o falso).
Estas son:
>
Mayor que
<
Menor que
>=
Mayor o igual que
<=
Menor o igual que
<>
Diferente
=
Igual
Ejemplos:
Si a = 10
b = 20
c = 30
a+b>c
a-b<c
a-b=c
a*b<>c
Lo que no se puede hacer:
a<b<c
10 < 20 < 30
Falso
Verdadero
Falso
Verdadero
debe expresarse:
dem
a>b y b>c
Operaciones lgicas:
Estos operadores se utilizan para establecer relaciones entre valores lgicos, y pueden ser el resultado
de una expresin de relacin.
And
Y
Or
O
Not
Negacin
Xor
O excluyente
Ejercicios
1. Escribe si son Verdaderas o falsas las siguientes expresiones:
(3 * 6 ) ^ > 5
(1/ 4 7) ^ 3 < 5
3.5 + 5.09 - 14.0 / 40 = 5.09
1/2+5=7
2. Se tiene un listado de socios de un club. Las variables que contienen los datos se llaman nombre,
apellido, edad, categoria, y guardan, como su nombre lo indica, los datos correspondientes.
Si se necesita saber todos los socios de apellido Perez, se escribira: apellido=Perez.
Si se estuviera buscando al socio Juan Perez, la expresin debera ser: apellido=Perez and
nombre=Juan. Cules son las expresiones a utilizar para obtener los siguientes datos:
Todos los socios
cadetes
Los socios entre 18 y 20
aos
Todos los socios que se
apelliden Jurez
El socio Anbal Lpez
Todos los Lpez
mayores de edad
10
Este conjunto de instrucciones estn escritas en una SECUENCIA LOGICA, que es la que seguir
la mquina que ejecute las mismas.
Por ejemplo:
Estas instrucciones forman el
Se desea formular un algoritmo que calcule la superficie de un
vocabulario propio de un lenguaje
rectngulo. Para ello debe tenerse la base y la altura.
de programacin. Se las llama
Supongamos que es un rectngulo fijo, cuya base y altura miden
PALABRAS RESERVADAS o PALABRAS
3 y 4 cm respectivamente.
CLAVE.
El algoritmo sera:
Deben escribirse de una determina da
Sup <- 3*4;
manera, respetando ciertas reglas. A
ESCRIBIR La superficie es; sup;
esto se lo llama SINTAXIS.
Fin
Aqu aparece la primera instruccin: ESCRIBIR, o instruccin de
escritura
La instruccin de escritura (ESCRIBIR) consiste en mandar por un dispositivo de salida (monitor,
impresora, archivo) un resultado o mensaje.
Se representa en un pseudocdigo como sigue:
ESCRIBIR El resultado es:, R --- Donde El resultado es: es un mensaje que se
desea aparezca y R es una variable que contiene un valor.
En el ejemplo anterior, el algoritmo nos sirve para un rectngulo particular. Supongamos que tenemos
un rectngulo mas grande (o ms chico), de 10 por 20. Si utilizamos el algoritmo anterior... qu
aparecer de superficie?... 12!
En la variable sup, est almacenada la operacin 3*4... por lo tanto es difcil que d otro valor.
Si deseamos que el algoritmo sirva para cualquier rectngulo, deberemos utilizar una
instruccin de lectura...
En donde b y h son variables que recibirn el valor de la base
Proceso Superficie
y la altura del rectngulo
LEER b;
LEER h;
Sup <- b * h;
ESCRIBIR La superficie es; sup;
Fin Proceso
La instruccin de lectura (LEER) consiste en recibir desde un dispositivo de entrada (el teclado, el
mouse o un archivo) un valor, y guardarlo en una variable.
La representamos como:
LEER a
Donde a son las variables que recibirn los valores
LEER b
Es la variable donde se va a
poner el valor del radio.
11
Otro Ejemplo:
Se desea construir un algoritmo donde la computadora salude al usuario.
PROCESO SALUDO
LEER nom;
ESCRIBIR 'Encantada de conocerte, ', nom;
FINPROCESO
Declaracin de variables
Cuando construimos un algoritmo donde usaremos variables, es conveniente declararlas.
Qu es esto?
Simplemente informar a la mquina que tal elemento ser una variable y de qu tipo ser.
En el ejemplo anterior:
Proceso Saludo
Lnea de declaracin de variables. Va
DEFINIR nom COMO CARACTER
al comienzo, antes de cualquier
ESCRIBIR Cual es tu nombre?;
instruccin y despus del comienzo.
LEER nom;
ESCRIBIR Encantada de conocerte, , nom;
FINProceso
En pseudocdigo, utilizaremos la instruccin DEFINIR para declarar la variable. Otros ejemplos:
DEFINIR a COMO NUMERO
DEFINIR a, b, c COMO NUMERO
Ejercicios
Realiza los siguientes algoritmos. Probarlos.
1) Supongamos que un individuo desea invertir su capital en un banco y desea saber cuanto dinero
ganar despus de un mes si el banco paga a razn de 2% mensual.
2) Un vendedor recibe un sueldo base mas un 10% extra por comisin de sus ventas, el vendedor
desea saber cuanto dinero obtendr por concepto de comisiones por las tres ventas que realiza en el
mes y el total que recibir en el mes tomando en cuenta su sueldo base y comisiones.
3) Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber
cuanto deber pagar finalmente por su compra.
4) Un maestro desea saber que porcentaje de hombres y que porcentaje de mujeres hay en un grupo
de estudiantes.
5) Dada una cantidad en pesos, obtener la equivalencia en dlares.
6) Leer un nmero y escribir el valor absoluto del mismo.
7) Calcular el nuevo salario de un obrero si obtuvo un incremento del 25% sobre su salario anterior.
8) En un hospital existen tres reas: Ginecologa, Pediatra, Traumatologia. El presupuesto anual del
hospital se reparte conforme a la sig. tabla:
rea
Porcentaje del presupuesto
Ginecologa
40%
Traumatologia
30%
Pediatra
30%
Obtener la cantidad de dinero que recibir cada rea, ingresando el presupuesto.
9) El dueo de una tienda compra un artculo a un precio determinado. Obtener el precio en que lo
debe vender para obtener una ganancia del 30%.
10) Todos los lunes, mircoles y viernes, una persona corre la misma ruta y cronometra los tiempos
obtenidos. Determinar el tiempo promedio que la persona tarda en recorrer la ruta en una
semana cualquiera.
12
BLOQUE 6: LA DECISIN
Ahora, supongamos el siguiente problema:
En un almacn se hace un 20% de descuento a los clientes cuya compra supere los $100
Cual ser la cantidad que pagara una persona por su compra?
Si es mayor, calculo
el descuento
Escribo el tiket
Proceso pagos
DEFINIR importe, total COMO NUMERO;
LEER importe;
Si importe >= 100
entonces
Total <- importe (importe * 20/100);
ESCRIBIR total;
Sino
ESCRIBIR importe;
FINSI
FinProceso
Estructura
condicional
Las estructuras condicionales comparan una variable contra otro(s) valor(es), para que en base al
resultado de esta comparacin, se siga un curso de accin dentro del programa. Cabe mencionar que
la comparacin se puede hacer contra otra variable o contra una constante, segn se necesite.
Existen dos tipos bsicos, las simples y las dobles.
Simples: Las estructuras condicionales simples se les conoce como Tomas de decisin. Estas tomas
13
FinProceso
Dobles: Las estructuras condicionales dobles permiten elegir entre dos opciones o alternativas
posibles en funcin del cumplimiento o no de una determinada condicin. Se representa de la
siguiente forma:
Si <condicin>
entonces
Accin(es) 1
sino
Accin(es) 2
FINSI
Donde:
Ejemplo resuelto:
Un hombre desea saber cuanto dinero se genera por concepto de intereses sobre la cantidad que
tiene en inversin en el banco. El decidir reinvertir los intereses siempre y cuando estos excedan a
$500, y en ese caso desea saber cuanto dinero tendr finalmente en su cuenta.
Proceso Interes
Definir int, cap, capf como numero
LEER int, cap;
int <- cap * int;
Si int > 500
entonces
capf <- cap + int;
finsi
Escribir capf;
FinProceso
Determinar si un alumno aprueba o reprueba un curso, sabiendo que aprobara si su promedio de tres
calificaciones es mayor o igual a 7; reprueba en caso contrario.
14
Proceso Notas
Definir calif1, calif2, calif3, prom como numero;
LEER calif1, calif2, calif3;
prom <- (calif1 + calif2 + calif3)/3;
SI prom >= 70
entonces
Escribir "alumno aprobado";
sino
Escribir "alumno reprobado";
FINSI
FinProceso
Ejercicios
1) Leer dos nmeros e imprimirlos en forma ascendente
2) Hacer un algoritmo que imprima el nombre de un articulo, clave, precio original y su precio con
descuento. El descuento lo hace en base a la clave, si la clave es 01 el descuento es del 10% y si la
clave es 02 el descuento en del 20% (solo existen dos claves).
3) Hacer un algoritmo que calcule el total a pagar por la compra de camisas. Si se compran tres
camisas o mas se aplica un descuento del 20% sobre el total de la compra y si son menos de tres
camisas un descuento del 10%
4) En un supermercado se hace una promocin, mediante la cual el cliente obtiene un descuento
dependiendo de un nmero que se escoge al azar. Si el nmero escogido es menor que 74 el
descuento es del 15% sobre el total de la compra, si es mayor o igual a 74 el descuento es del 20%.
Obtener cuanto dinero se le descuenta.
5) Una compaa de seguros esta abriendo un depto. de finanzas y estableci un programa para
captar clientes, que consiste en lo siguiente: Si el monto por el que se efecta el prstamo es menor
que $5.000 la cuota a pagar ser por el 3% del monto, y si el monto es mayor que $5000 la cuota a
pagar ser el 2% del monto. La financiera desea determinar cual ser la cuota que debe pagar un
cliente.
6) Una empresa de bienes races ofrece casas, bajo las siguientes condiciones: Si los ingresos del
comprador son de $800 o ms el anticipo ser del 15% del costo de la casa y el resto se distribuir en
pagos mensuales, a pagar en diez aos. Si los ingresos del comprador son menos de $800, el
anticipo ser del 30% del costo de la casa y el resto se distribuir en pagos mensuales a pagar en 7
aos. La empresa quiere obtener cuanto debe pagar un comprador por concepto de anticipo y
cunto por cada pago parcial.
7) El gobierno desea reforestar los bosques. Si la superficie del terreno excede a 1 milln de metros
cuadrados, entonces decidir sembrar de la sig. manera:
Porcentaje de la superficie del bosque Tipo de rbol
70%
pino
20%
eucalipto
10%
cedro
Si la superficie del terreno es menor o igual a un milln de metros cuadrados, entonces
decidir sembrar de la sig. manera:
Porcentaje de la superficie del bosque
Tipo de rbol
50%
pino
30%
eucalipto
20%
cedro
El gobierno desea saber el nmero de pinos, eucaliptos y cedros que tendr que sembrar en
el bosque, si se sabe que en 10 metros cuadrados caben 8 pinos, en 15 metros cuadrados caben 15
eucaliptos y en 18 metros cuadrados caben 10 cedros.
15
Ms ejercicios
9. Leer tres nmeros diferentes e imprimir el nmero mayor de los tres.
10. Leer tres nmeros y ESCRIBIR el menor.
11. ESCRIBIR los tres nmeros del ejercicio 1, ordenados de menor a mayor.
12. Calcular la utilidad que un trabajador recibe en el reparto anual de utilidades si este se le asigna como un
porcentaje de su salario mensual que depende de su antigedad en la empresa de acuerdo con la sig. tabla:
Tiempo
Utilidad
Menos de 1 ao
5 % del salario
1 ao o mas y menos de 2 aos
7% del salario
2 aos o mas y menos de 5 aos
10% del salario
5 aos o mas y menos de 10 aos
15% del salario
10 aos o mas
20% del salario
13. El ANSES requiere clasificar a las personas que se jubilarn en el ao 2003. Existen tres tipos de jubilaciones:
por edad, por antigedad joven y por antigedad adulta. Las personas adscritas a la jubilacin por edad deben
tener 60 aos o mas y una antigedad en su empleo de menos de 25 aos.
Las personas adscritas a la jubilacin por antigedad joven deben tener menos de 60 aos y una antigedad en
su empleo de 25 aos o ms.
Las personas adscritas a la jubilacin por antigedad adulta deben tener 60 aos o mas y una antigedad en su
empleo de 25 aos o mas.
Determinar en que tipo de jubilacin, quedara adscrita una persona.
14. En una fbrica de computadoras se planea ofrecer a los clientes un descuento que depender del nmero de
computadoras que compre. Si las computadoras son menos de cinco se les dar un 10% de descuento sobre el
total de la compra; si el nmero de computadoras es mayor o igual a cinco pero menos de diez se le otorga un
20% de descuento; y si son 10 o mas se les da un 40% de descuento. El precio de cada computadora es de
$1100
15. En una gomera se ha establecido una promocin de las llantas marca Ponchadas, dicha promocin consiste
en lo siguiente: Si se compran menos de cinco llantas el precio es de $30 cada una, de $25 si se compran de
cinco a 10 y de $20 si se compran mas de 10.
Obtener la cantidad de dinero que una persona tiene que pagar por cada una de las llantas que compra
y la que tiene que pagar por el total de la compra.
16. En un juego de preguntas a las que se responde Si o No gana quien responda correctamente las tres
preguntas. Si se responde mal a cualquiera de ellas ya no se pregunta la siguiente y termina el juego. Las
preguntas son:
1. Colon descubri Amrica?
2. La independencia de Mxico fue en el ao 1810?
3. The Doors fue un grupo de rock Americano?
17. Un proveedor de estreos ofrece un descuento del 10% sobre el precio sin IVA, de algn aparato si este
cuesta $200 o mas. Adems, independientemente de esto, ofrece un 5% de descuento si la marca es NOSY.
Determinar cuanto pagara, con IVA incluido, un cliente cualquiera por la compra de su aparato.
18. Tomando como base los resultados obtenidos en un laboratorio de anlisis clnicos, un medico determina si
una persona tiene anemia o no, lo cual depende de su nivel de hemoglobina en la sangre, de su edad y de su
sexo. Si el nivel de hemoglobina que tiene una persona es menor que el rango que le corresponde, se determina
su resultado como positivo y en caso contrario como negativo. La tabla en la que el medico se basa para obtener
el resultado es la siguiente:
EDAD
NIVEL HEMOGLOBINA
0 - 1 mes
13 - 26 g%
> 1 y < = 6 meses
10 - 18 g%
> 6 y < = 12 meses
11 - 15 g%
> 1 y < = 5 aos
11.5 - 15 g%
> 5 y < = 10 aos
12.6 - 15.5 g%
> 10 y < = 15 aos
13 - 15.5 g%
16
X=2
X=3
X=4
..
Acciones
si x=2
..
X=n
Acciones
si x=n
..
17
LEER X;
Segn X hacer
1:
ESCRIBIR
2:
ESCRIBIR
3:
ESCRIBIR
4:
ESCRIBIR
5:
ESCRIBIR
6:
ESCRIBIR
7:
ESCRIBIR
En Otro Caso
ESCRIBIR
Finsegn
DOMINGO;
LUNES;
MARTES;
MIRCOLES;
JUEVES;
VIERNES;
SBADO;
ERROR;
Ejercicios
1. Se leen ternas de nmeros A, B, y OP, se pide realizare las operaciones de acuerdo al codigo de
operacin op, de la siguiente manera:
si op = 1 entonces A+B; si op = 2 entonces A-B; si op = 3 entonces a*b; si op = 4 entonces a/b
2. Realizar un algoritmo que al ingresar un nmero, me devuelva el mes correspondiente.
3. El ltimo ejercicio del captulo anterior.
4. Realizar un algoritmo que realice la consistencia de fecha, es decir, que si se ingresa una fecha, diga si
esta es posible. Considerar los aos bisiestos.
5. Para realizar la liquidacin de sueldos en una compaa, se lee el apellido, nombre, categora y
antigedad. Se considera que por ao trabajado, se aumenta un 1% sobre el total. El sueldo bsico
depender de la categora. Si es categora 1, el sueldo bsico ser de $ 500; Categoras 2 y 3, de $300;
Categora 4, $400; categora 6 y 7, $600.
Se pide calcular el sueldo total de un empleado.
18
BLOUE 7: BUCLES
En los primeros bloques vimos (a modo de ejemplo) el siguiente algoritmo:
Repetir
Tomar caramelo de la bolsa
Darlo a nio
Hasta que la bolsa contenga menos de cuatro caramelos.
Aqu, debamos repetir una serie de acciones, hasta que se cumpliera determinada condicin.
Si no contsemos con este repetir, el algoritmo podra haber sido as:
Tomar caramelo de la bolsa
Darlo a nio
Si hay ms de cuatro caramelos en la bolsa
Tomar caramelo de la bolsa
Darlo a nio
Si hay ms de cuatro caramelos en la bolsa
Tomar caramelo de la bolsa
Darlo a nio
Si hay ms de cuatro caramelos en la bolsa
.......
etctera.....
Este tipo de estructuras que permiten reiterar una serie de instrucciones se llaman ciclos o
Bucles.
Hay varios casos de bucles.
contador
inicio
fin
Contadores: son variables especiales que cuentan algo... un evento, un nmero de veces, etc.
19
Ejercicios
Calcular el promedio de un alumno que tiene 7 calificaciones en la materia de Algoritmo.
Proceso notas
Definir Nom como carcter
Definir sum, calif, prom como numero
LEER Nom
Para c 1 hasta 7 hacer
LEER calif;
Sum = sum + calif;
Finpara
prom sum /7;
ESCRIBIR prom;
FinProceso
1. Imprimir 10 nmeros a partir del 22.
2. Leer 10 nmeros y obtener su doble.
3. Leer 10 nmeros e imprimir solamente los nmeros positivos
4. Leer 20 nmeros e imprimir cuantos son positivos, cuantos negativos y cuantos neutros.
5. Suponga que se tiene un conjunto de calificaciones de un grupo de 40 alumnos. Realizar un
algoritmo para calcular la calificacin media y la calificacin mas baja de todo el grupo.
6. Calcular e imprimir la tabla de multiplicar de un nmero cualquiera. Imprimir el multiplicando, el
multiplicador y el producto.
7. Simular el comportamiento de un reloj digital, imprimiendo la hora, minutos y segundos de un da
desde las 0:00:00 horas hasta las 23:59:59 horas
8. Una persona debe realizar un muestreo con 50 personas para determinar el promedio de peso de
los nios, jvenes, adultos y viejos que existen en su zona habitacional. Se determinan las
categoras con base en la sig, tabla:
CATEGORIA
EDAD
Nios
0 - 12
Jvenes
13 - 29
Adultos
30 - 59
Viejos
60 en adelante
Imprimir cuntos nios, jvenes, adultos y viejos hay.
9. En un centro de verificacin de automviles se desea saber el promedio de puntos contaminantes
de los primeros 25 automviles que lleguen. Asimismo se desea saber los puntos contaminantes
del auto que menos contamino y del que mas contamino.
10. Un Zologo pretende determinar el porcentaje de animales que hay en las siguientes tres
categoras de edades: de 0 a 1 ao, de mas de 1 ao y menos de 3 y de 3 o mas aos. El
zoolgico todava no esta seguro del animal que va a estudiar. Si se decide por elefantes solo
tomara una muestra de 20 de ellos; si se decide por las jirafas, tomara 15 muestras, y si son
chimpancs tomara 40.
20
Condicin a
evaluar.
Observamos que , leda una vez la variable (ejecutada una vez la accin fuera del ciclo) la
accin de sumar y leer (de nuevo), se realizarn mientras x no sea negativo.
Qu suceder si x EN LA PRIMERA LECTURA es cero o menor?... simplemente saltar hasta la
instruccin ESCRIBIR y (como suma valdr 0) ESCRIBIR 0, esto es NO ENTRAR EN EL CICLO NI
UNA VEZ SI LA CONDICIN NO SE CUMPLE.
La estructura es:
Mientras <condicin> hacer
Accion1;
Accion2;
.
AccionN;
Finmientras
Ejercicios
1. Una compaa de seguros tiene contratados a n vendedores. Cada uno hace tres ventas a la
semana. Su poltica de pagos es que un vendedor recibe un sueldo base, y un 10% extra por
comisiones de sus ventas. El gerente de su compaa desea saber cuanto dinero obtendr en la
semana cada vendedor por concepto de comisiones por las tres ventas realizadas, y cuanto tomando
en cuenta su sueldo base y sus comisiones.
2. En una empresa se requiere calcular el salario semanal de cada uno de los n obreros que laboran
en ella. El salario se obtiene de la sig. forma:
Si el obrero trabaja 40 horas o menos se le paga $20 por hora
Si trabaja mas de 40 horas se le paga $20 por cada una de las primeras 40 horas y $25 por
cada hora extra.
3. Determinar cuantos hombres y cuantas mujeres se encuentran en un grupo de n personas,
suponiendo que los datos son extrados alumno por alumno.
21
4. El Depto. de Seguridad Publica desea saber, de los n autos que entran a la ciudad, cuantos entran
con calcomana de cada color. Conociendo el ultimo dgito de la placa de cada automvil se puede
determinar el color de la calcomana utilizando la sig. relacin:
DGITO
COLOR
1o2
amarilla
3o4
rosa
5o6
roja
7o8
verde
9o0
azul
5. Obtener el promedio de calificaciones de un grupo de n alumnos.
6. Una persona desea invertir su dinero en un banco, el cual le otorga un 2% de inters. Cual ser la
cantidad de dinero que esta persona tendr al cabo de un ao si la ganancia de cada mes es
reinvertida?.
7. Calcular el promedio de edades de hombres, mujeres y de todo un grupo de alumnos.
8. Encontrar el menor valor de un conjunto de n nmeros dados.
9. Encontrar el mayor valor de un conjunto de n nmeros dados.
10. En un supermercado un cajero captura los precios de los artculos que los clientes compran e
indica a cada cliente cual es el monto de lo que deben pagar. Al final del da le indica a su supervisor
cuanto fue lo que cobro en total a todos los clientes que pasaron por su caja.
Condicin
Esta estructura permite realizar el proceso al menos una vez, ya que la condicin se evala
al final del proceso, mientras que en el MIENTRAS puede ser que nunca llegue a entrar si la
condicin no se cumple desde un principio. La forma de esta estructura es la siguiente:
Repetir
Accion1;
Accion2;
. .
AccionN;
Hasta que <condicin>
Ejercicios
1. En una tienda de descuento las personas que van a pagar el importe de su compra llegan a la caja
y sacan una bolita de color, que les dir que descuento tendrn sobre el total de su compra.
22
Determinar la cantidad que pagara cada cliente desde que la tienda abre hasta que cierra. Se sabe
que si el color de la bolita es roja el cliente obtendr un 40% de descuento; si es amarilla un 25% y si
es blanca no obtendr descuento.
2. Realizar un algoritmo que calcule el factorial de un nmero dado.
3. En un supermercado una ama de casa pone en su carrito los artculos que va tomando de los
estantes. La seora quiere asegurarse de que el cajero le cobre bien lo que ella ha comprado, por
lo que cada vez que toma un articulo anota su precio junto con la cantidad de artculos iguales
que ha tomado y determina cuanto dinero gastara en ese articulo; a esto le suma lo que ira
gastando en los dems artculos, hasta que decide que ya tomo todo lo que necesitaba. Aydale a
esta seora a obtener el total de sus compras.
4. Un teatro otorga descuentos segn la edad del cliente. determinar la cantidad de dinero que el
teatro deja de percibir por cada una de las categoras. Tomar en cuenta que los nios menores de
5 aos no pueden entrar al teatro y que existe un precio nico en los asientos. Los descuentos se
hacen tomando en cuenta el siguiente cuadro:
Edad
Descuento
Categora 1
5 - 14
35 %
Categora 2
15 - 19
25 %
Categora 3
20 - 45
10 %
Categora 4
46 - 65
25 %
Categora 5
66 en adelante
35 %
5. Determinar la cantidad semanal de dinero que recibir cada uno de los n obreros de una empresa.
Se sabe que cuando las horas que trabajo un obrero exceden de 40, el resto se convierte en horas
extras que se pagan al doble de una hora normal, cuando no exceden de 8; cuando las horas extras
exceden de 8 se pagan las primeras 8 al doble de lo que se paga por una hora normal y el resto al
triple.
6. Un censador recopila ciertos datos aplicando encuestas para el ultimo Censo Nacional de Poblacin
y Vivienda. Desea obtener de todas las personas que alcance a encuestar en un da, que porcentaje
tiene estudios de primaria, secundaria, carrera tcnica, estudios profesionales y estudios de posgrado.
7. Calcular la suma siguiente:
100 + 98 + 96 + 94 + . . . + 0 en este orden
Anexo I
Gua de Ejercicios
23
p (estructura para)
1.
2.
3.
4.
24
1. Dada una cierta cantidad de ventas de una compaa, calcular el promedio de ventas. Estas deben
ser ingresadas una a una. Cuando no se introduzcan ms datos, deber ingresarse "-1".
2. Realiza un programa que lea valores numricos. Cuando no se deseen ingresar ms valores, se
ingresar un "-1". Luego, deber ESCRIBIR por pantalla cul fue el mayor valor ingresado.
3. Realiza un programa que lea el importe de las ventas mensuales de una compaa. Como valor final
debe ingresarse "0". Luego, deber ESCRIBIRse por pantalla la siguiente tabla:
Entre 0 y 25 pesos: .... ventas
Entre 26 y 50 pesos: .... ventas
Ms de 50 pesos:
.... ventas
4. Realizar un programa para que la computadora solicite nmeros y muestre la suma de los mismos en
pantalla.
5. Modificar el programa anterior, para que adems de ESCRIBIR la suma, calcule el promedio de los
nmeros ingresados.
rCombinados
25
pesos no
26
Anexo II
Rango de variabilidad de los distintos tipos de Variables.
(Se toma como referencia el lenguaje Basic)
Nombre
Tipo
Valor mximo
Cadena/alfanumrica String
Enteros cortos Integer
Valor mnimo
32.767 caracteres
0 caracteres
32.767
-32.768
2.147.483.647
-2.147.483.648
3,402823E+38
-2,802597E-45
2,802597E-45
-3,402823E+38
1,79769313486231D+308
-4,940656458412465D-324
4,940656458412465D-324
-1,79769313486231D+308
Car.
!
"
#
$
%
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
N
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
Car.
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
N
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
Car.
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
N Car.
120
x
121
y
122
z
123
{
124
|
125
}
126
~
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
27
N Car.
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
_
177
_
N Car.
178
_
179
180
181
182
183
184
185
186
187
+
188
+
189
190
191
+
192
+
193
194
195
+
196
197
+
198
199
200
+
201
+
202
203
204
205
206
+
N Car.
207
208
209
210
211
212
213
i
214
215
216
217
+
218
219
_
220
_
221
222
223
_
224
225
226
227
228
229
230
231
232
233
234
235
N
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
Car.
Gua de ejercicios N 1
1. Analizar las siguientes expresiones e indicar si se trata de induccin o deduccin:
a) Luego de asistir a varios encuentros de bsquet, un individuo afirma: Los jugadores
profesionales de Bsquet son altos
b) Ya que todos los cuerpos al dejar de ser sostenidos por algo se caen, si suelto este lpiz, se
caer
c) A principios de siglo, el tiempo empleado por los mejores atletas en recorrer los 100 metros
llanos era de 12 segundos. Poco a poco esta marca ha ido disminuyendo y actualmente los
hombres ms veloces cubren esa distancia en menos de 10 segundos. Por lo tanto llegar
una poca en que los hombreas puedan correr tan rpido que no demoren ningn tiempo en
recorrer esa distancia.
d) Segn las leyes de la oferta y la demanda, si se incrementa la oferta de un producto, los
precios del mismo tienden a bajar. Por lo tanto, en pocas de cosecha de productos
agrcolas, en vista de la gran oferta, los precios bajan.
e) La tecnologa aplicada a los productos agrcolas, ha permitido mejorar el rendimiento de la
tierra, por lo tanto la aplicacin de tcnicas adecuadas a otras reas permitir mejorar toda la
produccin.
2. Escribe en cada caso la conclusin que se desprende la informacin dada.
a) Todos los gerentes de empresa tienen auto propio. Carlos Aparici es gerente de empresa
.
b) Todos los das 29 la familia Daz come come oquis al medioda. Maana es 29 de agosto
.
c) Martn, que es un chico de palabra, me dijo que si renda bien el examen me llevara al cine hoy a
la funcin de las 17 horas. Son las 19:30 y yo lo sigo esperando aburrida.
.
d) Cada vez que Mariana va al parque de diversiones juega con la montaa rusa. Ayer Mariana fue al
parque de diversiones
.
3. Responde las preguntas a partir de la informacin dada
Para solicitar la beca es necesario ser egresada de la facultad.
o Mariana es egresada de la facultad Puede pedir la beca?
o Beatriz esta en condiciones de pedir la beca. es egresada de la facultad?
o Juliana no desea pedir la beca. es egresada de la facultad?
o Vernica no es egresada de la facultad. puede solicitar la beca?
4. Indica en que casos la concusin se deduce de la informacin dada.
a) Informacin: Los das de tormenta nadie sale a la calle en este pueblo. Hoy es un da de
tormenta. Conclusin: hoy nadie sali a la calle en este pueblo
b) Informacin: Los das de tormenta nadie sale a la calle en este pueblo. Hoy nadie ha salido a
la calle. Conclusin: hoy es un da de tormenta
c) Los das de tormenta nadie sale a la cale en este pueblo. Hoy no es un da de tormenta.
Conclusin: Hoy todos salen a la calle en este pueblo.
d) Infamacin: Si pepe Gmez juega, el seleccionado de ftbol gana seguro. Hoy el
seleccionado perdi. Conclusin: Pepe Gmez no jug.
e) Informacin: Si pepe Gmez juega, el seleccionado gana seguro. Pepe Gmez no jug.
Conclusin: el seleccionado perdi
f)
Informacin: Todos los varones de 2 C son de Boca. Juan es de Boca. Conclusin: Juan es
de 2do. C
28
29
Gua de ejercicios N 2
1. De los siguientes enunciados, marca cules son proposiciones, cules no y (en caso de serlo) su
valor de verdad, y si es o no molecular.
Es
Valor de
Atmica o
proposicin?
verdad
molecular?
De noche, todos los gatos son pardos.
Alto ah!
Los suspiros son aire, y van al aire
Qu blanca est la luna!
Scrates y Platn fueron filsofos de la antigua Grecia.
Dnde hallaremos la paz?
Los reflejos naturales se llaman reflejos incondicionados y los
estmulos que provocan, tambin se llaman incondicionados.
Nada se pierde y todo se transforma.
Anda ms perdido que turco en la neblina.
Qu perdiste?
Un cuadrado es un rectngulo
Un rombo es un cuadriltero
Ests seguro?
Pars est en el hemisferio norte, al igual que Buenos Aires
Podemos preguntarnos qu perdimos?
Si a=5, entonces a2 = 25
2. Da 3 ejemplos de proposiciones falsas.
3. Da 3 ejemplos de proposiciones verdaderas.
4. Niega las siguientes proposiciones:
p= El sol sale por el este
q= 89 9 > 100
r= Algunos animales son cuadrpedos.
s= Todos los gatos son cuadrpedos.
t= Las computadoras son mquinas de procesamiento de datos.
5. Sean p= El sol es una estrella y q= La luna es un planeta. Cul es el valor de p^q?
Determina el valor de verdad y escribe las proposiciones:
~p
~q ^ p
p ^ ~q
~p ^ ~q
pvq
~p v q
6. Simboliza y determina el valor de verdad de las siguientes proposiciones:
a) Paris y Brasilia estn en el contiente americano.
b) El Ro de la Plata est en sudamrica.
c) China o Japn exportan arroz.
d) No es cierto que 7 + 4 > 3
e) El mono es un reptil.
30
Gua de Ejercicios 3
1. De los siguientes enunciados, determina si son o no proposiciones
Proposicin?
Valor?
Te esper bajo la lluvia diez horas, mil horas
Tiene hora?
Pi es la relacin entre la longitud de una circunferencia y su dimetro
Que pena
Un tringulo equiltero tiene por lo menos dos ngulos iguales
2. Propone un ejemplo de disyuncin verdadera, otro de disyuncin falsa y otro de implicacin falsa.
3.
Simboliza la siguiente proposicin y luego busca sus complementos:
Si los cuadrpedos son mamferos, entonces los gatos son mamferos.
4. Sean p=V, q=F y r=V, determina el valor de verdad de los siguientes enunciados:
(p q) p
(p q) (q r)
[(p q) (q r)] (p r)
(p q) (p q)
5. Simboliza y determina el valor de verdad de cada enunciado, asignndole valor de verdad a cada
una de las proposiciones:
Si una recta es una sucesin infinita de puntos y otra recta la corta, entonces no son
paralelas.
Si a=5 y b=6, entonces a-b=2
Si la raiz cuadrada de un nmero es ese nmero multiplicado por s mismo y adems tiene
siempre signo positivo, entonces la raiz cuadrada de 4 es -2 o +2.
Si Polinesia y Oceana estn en el Ocano Pacfico, entonces estn en el hemisferio norte y
bastante lejos.
6. Dados los siguientes circuitos lgicos, simbolizarlos:
31
Gua de Ejercicios 4
1. De los siguientes enunciados, determina si son o no proposiciones
Proposicin?
Piense en esto Es usted feliz?
Se busca: Ovejero alemn
El sol es una estrella
La luna es de queso
Llame ya!!
Un rombo es un cuadrado
Solo le pido a Dios es de Gieco
2.
3.
4.
5.
Valor?
10.
Unos aserradores cortan un tronco en trozos de 1 metro. El tronco tiene 5 metros de longitud.
El aserrado requiere un tiempo de 1 minuto y medio. En cuantos minutos aserrarn el tronco?
11.
He aqu 9 puntos dispuestos en hileras de 3 puntos cada una. Cmo pueden unirse por 4
lneas rectas, sin levantar la mano del papel?
* * *
* * *
* * *
32
33