Professional Documents
Culture Documents
1.1 Algoritmo
1.2 Pseudocdigo
1.3 Variables
1.4 Literales
1.5 Instrucciones Algoritmicas Bsicas
1.6 Expresiones Aritmticas
1.7 Expresiones Lgicas
1.1 Algoritmo
Un algoritmo es un conjunto ordenado y finito de instrucciones que conducen a la solucin de un
problema. En la vida cotidiana ejecutamos constantamente algoritmos. Por ejemplo, al instalar un
equipo de sonido ejecutamos las instrucciones contenidas en el manual del equipo, este conjunto
de instrucciones constituyen un algoritmo. Otro caso de algoritmo es el algoritmo matemtico de
Euclides para la obtencin del mximo comn divisor de dos nmeros.
Si un algoritmo puede ser ejecutado por una computadora, se dice que es un algoritmo
computacional; en caso contrario, se dice que es un algoritmo no computacional. Segn esto,
el algoritmo de Euclides es un algoritmo computacional; pero el algoritmo para instalar el equipo de
sonido es un algoritmo no computacional. Para que un algoritmo pueda ser ejecutado por una
computadora se necesita expresar el algoritmo en instrucciones comprensibles por la computadora,
para esto se requiere de un determinado lenguaje de programacin. Al algoritmo expresado en un
determinado lenguaje de programacin, se denomina programa. Puesto de otra manera, podemos
decir que, un programa es la implementacin o expresin de un algoritmo en un determinado
lenguaje de programacin siguiendo las reglas establecidas por el lenguaje elegido. En la Figura
2.1 que sigue se muestra la relacin entre problema, algoritmo y programa.
Debe ser preciso, es decir, cada instruccin debe indicar de forma inequvoca que se tiene
que hacer.
Debe ser definido, es decir, debe producir los mismos resultados para las mismas
condiciones de entrada.
Entrada de datos.
Proceso.
Salida de resultados.
Entradas :
- 1 kilo de bonito
- 3 camotes sancochados
- 3 cebollas cortadas a lo largo
- 1 rocoto en rodajas
- 3 ramas de apio picado
- 2 ramitas de culantro picado
- 4 vasos de jugo de limn
- 4 cucharadas de ajo molido
- 2 cucharadas de aj amarillo molido
- sal y pimienta
Proceso :
- Cortar la carne de pescado en pequeos trozos.
- Mezclar la carne con el jugo de limn, el ajo, la pimienta, el
culantro, el aj amarillo y el apio.
- Dejar reposar 30 minutos.
- Agregar sal al gusto y echar las cebollas cortadas.
- Servir acompaando el cebiche con el camote sancochado y el
rocoto en rodajas
Salida :
El ceviche
Ejemplo 1.2:- Algoritmo para expresar en centmetros y pulgadas una cantidad dada en metros.
Entrada:
La cantidad M de metros
Proceso:
Clculo de centmetros : C = M*100
Clculo de pulgadas : P = C/2.54
Salida :
La cantidad C de centmetros y la cantidad P de pulgadas
1.2 El Pseudocdigo
El pseudocdigo es un lenguaje de pseudoprogramacin utilizado para escribir algoritmos
computacionales. Como lenguaje de pseudoprogramacin, el pseudocdigo es una imitacin de
uno o ms lenguajes de programacin. De esta manera podemos encontrar pseudocdigos
orientados a lenguajes de programacin como Pascal, Java, C, C++, etc. En el caso de este curso
orientaremos los pseudocdigos a los lenguajes Java, C y C++. El objetivo del pseudocdigo es
permitir que el programador se centre en los aspectos lgicos de la solucin, evitando las reglas de
sintxis de los lenguajes de programacin. No siendo el pseudocdigo un lenguaje formal, los
pseudocdigos varan de un programador a otro, es decir, no hay un pseudocdigo estndar.
1.3 Variables
Una variable es una localizacin o casillero en la memoria principal que almacena un valor que
puede cambiar en el transcurso de la ejecucin del programa. Cuando un programa necesita
almacenar un dato, necesita una variable. Toda variable tiene un nombre, un tipo de dato y
un valor. Antes de poder utilizar una variable es necesario declararla especificando su nombre y
su tipo de dato. Para declarar declarar variables usaremos los siguientes formatos:
tipo nombre
Donde:
nombre1, nombre2, ..., Nombres de las variables . El nombre de una variable debe
nombren comenzar con una letra, un smbolo de subrayado o un smbolo
de dlar. Los dems caractres del nombre puede ser letras,
smbolos de subrayado o smbolo de dlar. Debe considerarse
tambin que una letra mayscula se considera diferente de una
letra minscula.
ENTERO edad
REAL descuento
Esto crea los casilleros de memoria edad y descuento. Luego de la creacin, las variables estn
indefinidas ( ? ).
edad ?
descuento ?
La siguiente instruccin declara las variables nota1, nota2 y nota3, todas de
tipo ENTERO.
Esto crea los casilleros de memoria nota1, nota2 y nota3. Luego de la creacin, las variables
estn indefinidas ( ? ).
nota1 ?
nota2 ?
nota3 ?
1.4 Literales
Se denominan literales a todos aquellos valores que figuran en el pseudocdigo y pueden ser:
Literales enteros
Literales reales
Literales de carcter
Lieterales de cadena
Literales lgicos
verdadero, falso
1.5.1 Entrada
LEER variable
Solicita el ingreso de un valor, desde algn dispositivo de entrada (como el teclado), para la
variable estatura.
1.5.2 Salida
IMPRIMIR variable
IMPRIMIR importeCompra
1.5.3 Asignacin
Consiste en asignar a una variable el valor de una expresin. La expresin puede ser una simple
variable, un simple literal o una combinacin de variables, literales y operadores. La asignacin se
expresa en el pseudocdigo de la siguiente forma:
variable = expresin
Cuando se asigna un valor ENTERO a una variable REAL, entonces el valor ENTERO se
convertir en REAL antes de almacenarse. As, al asignar el valor ENTERO 25 a una variable
REAL, se almacenar 25.0.
Ejemplo 1.4:- Algoritmo para expresar en centmetros y pulgadas una cantidad dada en metros.
Esta es una solucin en pseudocdigo del ejemplo 1.2 utilizando conceptos computacionales de
variable, entrada de datos y salida de resultados. La solucin considera que 1 metro = 100
centmetros y que 1 pulgada = 2.54 centmetros.
INICIO
// Declara las variables M, C y P
REAL M, C, P
En la tabla que sigue se muestran los operadores aritmticos que vamos a utilizar.
Los operadores aritmticos pueden utilizarse con tipos enteros y reales. Si en una operacin con
dos operandos, ambos operandos son enteros, el resultado es un entero; si alguno de ellos es real,
el resultado es real. As, 15/4 es 3 y no 3.75; en cambio, 15.0/4 es 3.75.
Cuando una expresin aritmtica tiene ms de un operador aritmtico, el orden de aplicacin de los
operadores sigue un orden preciso determinado por las reglas de jerarqua de los operadores
aritmticos, que se muestran en la siguiente tabla:
Solucin
e = a/b/c
Como todos los operadores tienen la misma jerarqua, la evaluacin ser de izquierda a derecha:
Note que el orden de ejecucin esta de acuerdo con la expresin algebraica, por lo que no se
requiere ninguna pareja de parntesis.
Solucin
e = a*b*c/d/e
Como todos los operadores tienen la misma jerarqua, la evaluacin ser de izquierda a derecha:
Note que el orden de ejecucin esta de acuerdo con la expresin algebraica, por lo que no se
requiere ninguna pareja de parntesis.
Solucin
Primero, se sumar a ms b.
Segundo, se dividir c entre d.
Tercero, el resultado ya obtenido de a+b se dividir entre el resultado ya obtenido de c/d.
Cuarto, se dividir 4 entre el resultado ya obtenido de ((a+b)/(c/d))
Quinto, se dividir v entre w.
Sexto, se dividir el resultado ya obtenido de v/w entre p.
Sptimo, se multiplicar 5 por m.
Octavo, se multiplicar el resultado ya obtenido de 5*m por n.
Noveno, se multiplicar el resultado ya obtenido de 5*m*n por q.
Dcimo, se sumar el resultado ya obtenido de 4/((a+b)/(c/d)) ms el resultado ya obtenido de
v/w/p.
Undcimo, se sumar el resultado ya obtenido de 4/((a+b)/(c/d)) + v/w/p ms el resultado ya
obtenido de 5*m*n*q.
Note que usando correctamente las reglas de jerarqua, es posible usar menos parejas de
parntesis.
Estructuras de Secuencia
2.1 Concepto
2.2 Ejercicios 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13
2.1 Concepto
Una estructura secuencial es aquella en la que las instrucciones estan una a continuacin de la
otra siguiendo una secuencia nica, sin cambios de ruta. La estructura secuencial tiene una
entrada y una salida.
Inicio
.
.
accin 1
accin 2
accin 3
.
.
Fin
2.2 Ejercicios
Ejercicio 1:- Disee un pseudocdigo que halle el rea y el permetro de un rectngulo. Considere
que: area = base x altura y perimetro = 2 x (base+altura).
Algoritmo
INICIO
// Declaracin de variables
REAL base, altura, area, perimetro
// Entrada de datos
LEER base, altura
// Proceso de clculo
area = base*altura
perimetro = 2*(base+altura)
// Salida de resultados
IMPRIMIR area, perimetro
FIN
Ejemplo 2:- Disee un pseudocdigo para convertir una longitud dada en metros a sus
equivalentes en centmetros, pies, pulgadas y yardas. Considere que: 1 metro = 100 centmetros, 1
pulgada = 2.54 centimetros, 1 pie = 12 pulgadas, 1 yarda = 3 pies.
Algoritmo
INICIO
// Declaracin de variables
REAL cmetr,ccent, cpies, cpulg, cyard
// Entrada de datos
LEER cmetr
// Proceso de clculo
ccent = cmetr*100
cpulg = ccent/2.54
cpies = cpulg/12
cyard = cpies/3
// Salida de resultados
IMPRIMIR cpulg, cpies, cyard
FIN
Ejercicio 3:- Una institucin benfica europea ha recibido tres donaciones en soles, dolares y
marcos. La donacin ser repartida en tres rubros: 60% para la implementacin de un centro de
salud, 40% para un comedor de nios y el resto para gastos administrativos. Disee un algoritmo
que determine el monto en euros que le corresponde a cada rubro. Considere que: 1 dlar = 3.52
soles, 1 dlar = 2.08 marcos, 1 dlar = 1.07 euros.
Algoritmo
INICIO
// Declaracin de variables
REAL c soles, cdolares, c marcos, ceuros, rubro1, rubro2, rubro3
// Entrada de datos
LEER csoles, cdolares, cmarcos
// Proceso de clculo
ceuros = (csoles/3.52 + cdolares + cmarcos/2.08)*1.07
rubro1 = ceuros*0.60
rubro2 = ceuros*0.40
rubro3 = ceuros*0.20
// Salida de resultados
IMPRIMIR rubro1, rubro2, rubro3
FIN
Ejercicio 4:- En una competencia atltica de velocidad el tiempo se mide en minutos, segundos y
centsimas de segundo y, el espacio recorrido se mide en metros. Disee un algoritmo para
determinar la velocidad promedio de un atleta en km/hr. Considere que: 1 hora = 60 minutos, 1
minuto = 60 segundos, 1 segundo = 100 centsimas de segundo, 1 kilmetro = 1000 metros.
Algoritmo
INICIO
// Declaracin de variables
ENTERO tmin, tseg, tcen
REAL thor, velkmhr, espmt, espkm
// Entrada de datos
LEER tmin, tseg, tcen, espmt
// Salida de resultados
IMPRIMIR velkmhr
FIN
Ejercicio 5:- Disee un algoritmo que determine la cifra de las unidades de un nmero natural.
Solucin 1
Anlisis
Puede comprobarse que la cifra de las unidades de un nmero es igual al resto de la divisin del
nmero entre 10. Observe para ello las siguientes divisiones:
3245 10
5 324
768 10
8 76
9 10
9 0
unidades = numero % 10
Siendo % el operador residuo. Este operador permite obtener el residuo de una divisin, as como /
permite obtener el cociente.
Algoritmo
INICIO
// Declaracin de variables
ENTERO numero, unidades
// Entrada de datos
LEER numero
// Proceso de clculo
unidades = numero % 10
// Salida de resultados
IMPRIMIR unidades
FIN
Solucin 2
Anlisis
El residuo de una divisin entera puede obtenerse tambin sin recurrir al operador %, de la
siguiente forma:
observe para esto que en la divisin (numero/10) los operandos son enteros por lo que el cociente
ser un entero. As por ejemplo, si numero es igual a 3245, la divisin (numero/10) produce 324,
aunque matemticamente sea 324.5; es decir, se descarta la parte decimal.
Algoritmo
INICIO
// Declaracin de variables
ENTERO numero, unidades
// Entrada de datos
LEER numero
// Proceso de clculo
unidades = numero - (numero/10)*10
// Salida de resultados
IMPRIMIR unidades
FIN
Ejercicio 6:- Disee un algoritmo que determine la suma de las cifras de un nmero entero positivo
de 4 cifras.
Solucin 1
Anlisis
Las cifras pueden ser obtenidas mediante divisiones sucesivas entre 10. Para el efecto, considere
el caso de un nmero N igual a 3245:
3245 10
5 324
unidades = N%10
cociente = N/10
324 10
4 32
decenas = cociente%10
cociente = cociente/10
32 10
2 3
centenas = cociente%10
millares = cociente/10
Algoritmo
INICIO
// Declaracin de variables
ENTERO N, suma, millares, centenas, decenas, unidades, resto
// Entrada de datos
LEER N
// Proceso de clculo
unidades = N%10
cociente = N/10
decenas = cociente%10
cociente = cociente/10
centenas = cociente%10
millares = cociente/10
suma = unidades + decenas + centenas + millares
// Salida de resultados
IMPRIMIR suma
FIN
Solucin 2
Anlisis 2
Considerando que el nmero tiene 4 cifras, las cifras tambin pueden ser obtenidas mediante
divisiones sucesivas entre 1000, 100 y 10. Para el efecto, considere el caso de un nmero N igual
a 3245:
3245 1000
245 3
millares = N/1000
resto = N%1000
245 100
45 2
centenas = resto/100
resto = resto%100
45 10
3 4
decenas = resto/10
unidades = resto%10
Algoritmo
INICIO
// Declaracin de variables
ENTERO N, suma, millares, centenas, decenas, unidades, resto
// Entrada de datos
LEER N
// Proceso de clculo
millares = N/1000
resto = N%1000
centenas = resto/100
resto = resto%100
decenas = resto/10
unidades = resto%10
suma = unidades + decenas + centenas + millares
// Salida de resultados
IMPRIMIR suma
FIN
Ejercicio 7:- Disee un algoritmo que lea la hora actual del da HH:MM:SS y determine cuantas
horas, minutos y segundos restan para culminar el da.
Algoritmo
INICIO
// Declaracin de variables
ENTERO hor1, min1, seg1, hor2, min2, seg2, segres, resto
// Entrada de datos
LEER hor1, min1, seg1
Ejercicio 8:- Disee un algoritmo para sumar dos tiempos dados en horas, minutos y segundos.
Algoritmo
INICIO
// Declaracin de variables
ENTERO hor1, min1, seg1, hor2, min2, seg2, hor3, min3, seg3, totseg,
resto
// Entrada de datos
LEER hor1, min1, seg1, hor2, min2, seg2
// Salida de resultados
IMPRIMIR hor3, min3, seg3
FIN
Ejercicio 9:- El sueldo neto de un vendedor se calcula como la suma de un sueldo bsico de
S/.250 ms el 12% del monto total vendido. Disee un algoritmo que determine el sueldo neto de
un vendedor sabiendo que hizo tres ventas en el mes.
Algoritmo
INICIO
// Declaracin de variables
REAL venta1, venta2, venta3, ventatot, comision, sueldoneto
// Entrada de datos
LEER venta1, venta2, venta3
// Proceso de clculo
ventatot = venta1 + venta2 + venta3
comision = 0.12*ventatot
sueldoneto = 250 + comision
// Salida de resultados
IMPRIMIR sueldoneto
FIN
Ejercicio 10:- Disee un algoritmo que determine el porcentaje de varones y de mujeres que hay
en un saln de clases.
Algoritmo
INICIO
// Declaracin de variables
REAL porcvar, porcmuj
ENTERO varones, mujeres, total
// Entrada de datos
LEER varones, mujeres
// Proceso de clculo
total = varones + mujeres
porcvar = varones*100.0/total
porcmuj = mujeres*100.0/total
// Salida de resultados
IMPRIMIR porcvar, porcmuj
FIN
Ejercicio 11:- En pases de habla inglesa es comn dar la estatura de una persona como la suma
de una cantidad entera de pies ms una cantidad entera de pulgadas. As, la estatura de una
persona podra ser 3' 2" ( 3 pies 2 pulgadas ). Disee un algoritmo que determine la estatura de
una persona en metros, conociendo su estatura en el formato ingls. Considere que: 1 pie = 12 plg,
1 plg = 2.54 cm, 1 m = 100 cm.
Algoritmo
INICIO
// Declaracin de variables
REAL estmt
ENTERO cpies, cplgs
// Entrada de datos
LEER cpies, cplgs
// Proceso de clculo
estmt = (cpies*12 + cplgs)*2.54/100
// Salida de resultados
IMPRIMIR estmt
FIN
Ejercicio 12:- Disee un algoritmo que exprese la capacidad de un disco duro en megabytes,
kilobytes y bytes, conociendo la capacidad del disco en gigabytes. Considere que: 1 kilobyte =
1024 bytes, 1 megabyte = 1024 kilobyte, 1 gigabyte = 1024 megabytes.
Algoritmo
INICIO
// Declaracin de variables
REAL cgigabyte, cmegabyte, ckilobyte, cbyte
// Entrada de datos
LEER cgigabyte
// Proceso de clculo
cmegabyte = cgigabyte*1024
ckilobyte = cmegabyte*1024
cbyte = ckilobyte*1024
// Salida de resultados
IMPRIMIR cmegabyte, ckilobyte, cbyte
FIN
Ejercicio 13:- Disee un algoritmo que intercambie las cifras de las unidades de dos nmeros
naturales.
Algoritmo
INICIO
// Declaracin de variables
ENTERO numero1, numero2, unidades1, unidades2
// Entrada de datos
LEER numero1, numero2
// Salida de resultados
IMPRIMIR n1, n2
FIN
Estructuras de Seleccin
3.1 Concepto
3.2 Estructura de Seleccin Simple SI
3.3 Estructura de Seleccin Doble SI-SINO
3.4 Estructura de Seleccin Doble en Cascada SI-SINO-SI
3.5 Estructura de Seleccin Mltiple SEGUN
3.6 Ejercicios 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15
3.1 Introduccin
Las estructuras de seleccin son estructuras de control utilizadas para la toma decisiones dentro
de un programa. A estas estructuras se conocen tambin como estructuras
selectivas o estructuras de decisin y son las siguientes:
SI( condicion )
acciona
SI( condicion ){
acciona1
acciona2
.
.
.
accionan
}
Por ejemplo, si se desea cambiar el signo de un nmero nicamente en caso que sea negativo,
podemos escribir:
SI( condicion )
acciona
SINO
accionb
SI( condicion ){
acciona1
acciona2
.
.
.
accionan
}
SINO{
accionb1
accionb2
.
.
.
accionbn
}
Por ejemplo, la siguiente estructura de seleccin doble determina si una persona es mayor o menor
de edad:
Esto imprime "Mayor de edad" si la persona tiene 18 aos ms e imprime "Menor de edad" si la
persona tiene menos de 18 aos. En cualquiera de los casos, despus de efectuar la impresin, se
ejecutar la primera instruccin que sigue a la estructura SI...SINO.
SI( condicion1 )
accion1
SINO
SI( condicion2 )
accion2
SINO
SI( condicion3 )
accion3
.
.
.
SINO
acciondefecto
Pseudocdigo ( Forma 2 )
SI( condicion1 )
accion1
SINO SI( condicion2 )
accion2
SINO SI( condicion3 )
accion3
.
.
.
SINO
acciondefecto
SI( n > 0 )
signo = "Positivo"
SINO
SI( n < 0 )
signo = "Negativo"
SINO
signo = "Cero"
SI( n > 0 )
signo = "Positivo"
SINO SI( n < 0 )
signo = "Negativo"
SINO
signo = "Cero"
SEGUN( selector ){
CASO c1 : accion1
CASO c2 : accion2
CASO c3 : accion3
.
.
.
CASO cn : accionn
DEFECTO : acciondefecto
}
Por ejemplo, la siguiente estructura de seleccin mltiple determina el nombre de la estacin del
ao conociendo el nmero de la estacin (1 para Primavera, 2 para Verano, 3 para Otoo y 4 para
Invierno) :
SEGUN(numeroEstacion){
CASO 1 : nombreEstacion = "Primavera"
CASO 2 : nombreEstacion = "Verano"
CASO 3 : nombreEstacion = "Otoo"
DEFECTO : nombreEstacion = "Invierno"
}
3.6 Ejercicios
Ejercicio 1:- En una playa de estacionamiento cobran S/. 2.5 por hora o fraccin. Disee un
algoritmo que determine cuanto debe pagar un cliente por el estacionamiento de su vehculo,
conociendo el tiempo de estacionamiento en horas y minutos.
Algoritmo 1
INICIO
// Declaracin de variables
ENTERO horas, minutos
REAL pago
// Entrada de datos
LEER horas, minutos
// Salida de resultados
IMPRIMIR pago
FIN
Algoritmo 2
INICIO
// Declaracin de variables
ENTERO horas, minutos, horasPagar
REAL pago
// Entrada de datos
LEER horas, minutos
// Salida de resultados
IMPRIMIR pago
FIN
Ejercicio 2:- Disee un algoritmo que determine si n nmero es o no es, par positivo.
Algoritmo
INICIO
// Declaracin de variables
REAL numero
CADENA tipoNumero
// Entrada de datos
LEER numero
// Salida de resultados
IMPRIMIR tipoNumero
FIN
Ejercicio 3:- Disee un algoritmo que lea tres nmeros y determine el nmero mayor.
Algoritmo
INICIO
// Declaracin de variables
REAL numero1, numero2, numero3, numeroMayor
// Entrada de datos
LEER numero1, numero2, numero3
// Determina el mayor
numeroMayor = numero1
SI( numero2 > numeroMayor )
numeroMayor = numero2
SI( numero3 > numeroMayor )
numeroMayor = numero3
// Salida de resultados
IMPRIMIR mayor
FIN
Ejercicio 4:- Una tienda ha puesto en oferta la venta al por mayor de cierto producto, ofreciendo un
descuento del 15% por la compra de ms de 3 docenas y 10% en caso contrario. Adems por la
compra de ms de 3 docenas se obsequia una unidad del producto por cada docena en exceso
sobre 3. Disee un algoritmo que determine el monto de la compra, el monto del descuento, el
monto a pagar y el nmero de unidades de obsequio por la compra de cierta cantidad de docenas
del producto.
Algoritmo
INICIO
// Declaracin de variables
REAL montopag, montocom, montodes, precio
ENTERO docenas, obsequio
// Entrada de datos
LEER docenas, precio
// Salida de resultados
IMPRIMIR montocom, montodes, montopag, obsequio
FIN
Ejercicio 5:- Disee un algoritmo que lea un nmero de tres cifras y determine si es o no capica.
Un nmero es capica si es igual al revs del nmero.
Observacin
Como el nmero tiene tres cifras, para ser capica basta con que la cifra de las unidades sea igual
a la cifra de las centenas. Por ejemplo: 353, 878, etc.
Algoritmo
INICIO
// Salida de resultados
ENTERO numero, unidades, centenas
CADENA tipoNumero
// Entrada de datos
LEER numero
Algoritmo
INICIO
// Declaracin de variables
ENTERO dado1, dado2, dado3
CADENA calificacion
// Entrada de datos
LEER dado1, dado2, dado3
// Determina la calificacin
SI( dado1 + dado2 + dado3 == 18 )
calificacion = "Excelente"
SINO SI( dado1+dado2 == 12 || dado1+dado3 == 12 || dado2+dado3 ==
12 )
calificacion = "Muy bin"
SINO SI( dado1 == 6 || dado2 == 6 || dado3 == 6 )
calificacion = "Regular"
SINO
calificacion = "Psimo"
// Salida de resultados
IMPRIMIR calificacion
FIN
Ejercicio 7:- Una compaa dedicada al alquiler de automoviles cobra un monto fijo de $30 para
los primeros 300 km de recorrido. Para ms de 300 km y hasta 1000 km, cobra un monto adicional
de $ 0.15 por cada kilmetro en exceso sobre 300. Para ms de 1000 km cobra un monto adicional
de $ 0.10 por cada kilmetro en exceso sobre 1000. Los precios ya incluyen el 18% del impuesto
general a las ventas, IGV. Disee un algoritmo que determine el monto a pagar por el alquiler de un
vehculo y el monto includo del impuesto.
Algoritmo
INICIO
// Declaracin de variables
REAL kilomrec, montopag, montoigv, montofijo = 30, igv = 0.18
// Entrada de datos
LEER kilomrec
Ejercicio 8:- Disee un algoritmo que determine quienes son contemporneos entre Juan, Mario y
Pedro.
Algoritmo
INICIO
// Declaracin de variables
ENTERO juan, mario, pedro
CADENA contemporaneos
// Entrada de datos
LEER juan, mario, pedro
// Salida de resultados
IMPRIMIR contemporaneos
FIN
Ejercicio 9:- El promedio de prcticas de un curso se calcula en base a cuatro prcticas calificadas
de las cuales se elimina la nota menor y se promedian las tres notas ms altas. Disee un
algoritmo que determine la nota eliminada y el promedio de prcticas de un estudiante.
Algoritmo
INICIO
// Declaracin de variables
REAL pc1, pc2, pc3, pc4, pcmenor, promedio
// Entrada de datos
LEER pc1, pc2, pc3, pc4
// Determina el promedio
promedio = (pc1 + pc2 + pc3 + pc4 - pcmenor )/3
// Salida de resultados
IMPRIMIR promedio, pcmenor
FIN
Ejercicio 10:- Disee un algoritmo que lea tres longitudes y determine si forman o no un tringulo.
Si es un tringulo determine de que tipo de tringulo se trata entre: equiltero (si tiene tres lados
iguales), issceles (si tiene dos lados iguales) o escaleno (si tiene tres lados desiguales).
Considere que para formar un tringulo se requiere que: "el lado mayor sea menor que la suma de
los otros dos lados".
Algoritmo
INICIO
// Declaracin de variables
REAL L1, L2, L3, suma
CADENA tipoRectangulo
// Entrada de datos
LEER L1, L2, L3<
// Salida de resultados
IMPRIMIR tipoRectangulo
FIN
Ejercicio 11:- Disee un algoritmo que lea tres nmeros enteros y determine el menor valor
positivo. Si los nmeros positivos son iguales, dar como menor a cualquiera de ellos.
Algoritmo
INICIO
// Declaracin de variables
ENTERO a, b, c, menor
// Entrada de datos
LEER a, b, c
// Determina el menor
// Salida de resultados
SI( menor != -1 )
IMPRIMIR menor
SINO
IMPRIMIR "No se ingres ningn nmero positivo"
FIN
Ejercicio 12:- Disee un algoritmo que lea tres nmeros y los imprima de mayor a menor y de
menor a mayor.
Algoritmo
INICIO
// Declaracin de variables
REAL n1, n2, n3, mayor, menor, medio
// Entrada de datos
LEER n1, n2, n3
// Determina el menor
menor = n1
SI( n2 < menor )
menor = n2
SI( n3 < menor )
menor = n3
// Determina el mayor
mayor = n1
SI( n2 > mayor )
mayor = n2
SI( n3 > mayor )
mayor = n3
// Determina el medio
medio = n1+n2+n3-mayor-menor
Ejercicio 13:- Disee un algoritmo para obtener el grado de eficiencia de un operario de una
fbrica de tornillos, de acuerdo a las siguientes condiciones, que se le imponen para un perodo de
prueba:
Algoritmo 1
INICIO
// Declaracin de variables
ENTERO torpro, tordef, grado
// Entrada de datos
LEER torpro, tordef
// Salida de resultados
IMPRIMIR grado
FIN
Algoritmo 2
INICIO
// Declaracin de variables
ENTERO torpro, tordef, grado
// Entrada de datos
LEER torpro, tordef
// Salida de resultados
IMPRIMIR grado
FIN
Ejercicio 14:- Se cuenta con los votos obtenidos por Juan, Pedro y Maria en una eleccin
democrtica a la presidencia de un club. Para ganar la eleccin se debe obtener como mnimo el
50% de los votos ms 1. En caso que no haya un ganador se repite la eleccin en una segunda
vuelta. Van a la segunda vuelta los dos candidatos que obtengan la ms alta votacin. Se anula la
eleccin en caso de producirse un empate doble por el segundo lugar o un empate triple. Disee
un algoritmo que determine el resultado de la eleccin.
Algoritmo
INICIO
// Declaracin de variables
ENTERO vjuan, vpedro, vmaria, vmingan
CADENA resultado
// Entrada de datos
LEER vjuan, vpedro, vmaria
// Salida de resultados
IMPRIMIR resultado
FIN
Ejercicio 15:- Disee un algoritmo que lea un nmero entero de 3 cifras, y forme el mayor nmero
posible con las cifras del nmero ingresado. El nmero formado debe tener el mismo signo que el
nmero ingresado.
Algoritmo
INICIO
// Declaracin de variables
ENTERO num1, num2, numaux, uni, dec, cen, menor, mayor,medio
// Entrada de datos
LEER num1