• No se han encontrado resultados

PROBLEMAS RESUELTOS POR PSEUDOCÓDIGO I) PROBLEMAS SECUENCIALES

N/A
N/A
Protected

Academic year: 2018

Share "PROBLEMAS RESUELTOS POR PSEUDOCÓDIGO I) PROBLEMAS SECUENCIALES"

Copied!
26
0
0

Texto completo

(1)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 1 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

PROBLEMAS RESUELTOS POR PSEUDOCÓDIGO

I) PROBLEMAS SECUENCIALES

1) Suponga que un individuo desea invertir su capital en un banco y desea saber cuanto dinero ganara después de un mes si el banco paga a razón de 2% mensual.

INICIO

LEER cap_inv gan = cap_inv * 0.02 IMPRIMIR gan FIN

2) Un vendedor recibe un sueldo base mas un 10% extra por comisión 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.

INICIO

LEER sb, v1, v2, v3 tot_vta = v1 + v2 + v3 com = tot_vta * 0.10 tpag = sb + com IMPRIMIR tpag, com FIN

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.

INICIO LEER tc d = tc * 0.15 tp = tc - d IMPRIMIR tp FIN

4) Un alumno desea saber cual será su calificación final en la materia de Algoritmos. Dicha Calificación se compone de los siguientes porcentajes:

55% del promedio de sus tres calificaciones parciales. 30% de la calificación del examen final.

15% de la calificación de un trabajo final.

INICIO

LEER c1, c2, c3, ef, tf prom = (c1 + c2 + c3)/3 ppar = prom * 0.55 pef = ef * 0.30 ptf = tf * 0.15 cf = ppar + pef + ptf IMPRIMIR cf FIN

5) Un maestro desea saber que porcentaje de hombres y que porcentaje de mujeres hay en un grupo de estudiantes.

INICIO

(2)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 2 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

6) Realizar un algoritmo que calcule la edad de una persona.

INICIO

LEER fnac, fact edad = fact - fnac IMPRIMIR edad FIN

II) PROBLEMAS CONDICIONALES

II.a) PROBLEMAS SELECTIVOS SIMPLES

1) Un hombre desea saber cuanto dinero se genera por concepto de intereses sobre la cantidad que tiene en inversión en el banco. El decidirá reinvertir los intereses siempre y cuando estos excedan a $7000, y en ese caso desea saber cuanto dinero tendrá finalmente en su cuenta.

INICIO

LEER p_int, cap int = cap * p_int

SI int > 7000 ENTONCES capf = cap + int FIN-SI

IMPRIMIR capf FIN

2) Determinar si un alumno aprueba a reprueba un curso, sabiendo que aprobara si su promedio de tres calificaciones es mayor o igual a 70; reprueba en caso contrario.

INICIO

LEER calif1, calif2, calif3 prom = (calif1 + calif2 + calif3)/3 SI prom >= 70 ENTONCES

Imprimir “alumno aprobado” SI NO

IMPRIMIR “alumno reprobado” FIN-SI

FIN

3) Un obrero necesita calcular su salario semanal, el cual se obtiene de la sig. manera:

 Si trabaja 40 horas o menos se le paga $16 por hora.

 Si trabaja mas de 40 horas se le paga $16 por cada una de las primeras 40 horas y $20 por cada hora extra.

INICIO LEER ht

SI ht > 40 ENTONCES he = ht - 40

ss = he * 20 + 40 * 16 SI NO

ss = ht * 16 FIN-SI

IMPRIMIR ss FIN

4) Que lea dos números y los imprima en forma ascendente

INICIO

LEER num1, num2

SI num1 < num2 ENTONCES

IMPRIMIR num1, num2

SI NO

IMPRIMIR num2, num1 FIN-SI

(3)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 3 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

5) En un almacén se hace un 20% de descuento a los clientes cuya compra supere los $1000 ¿ Cual será la cantidad que pagara una persona por su compra?

INICIO

LEER compra

SI compra > 1000 ENTONCES desc = compra * 0.20 SI NO

desc = 0 FIN-SI

tot_pag = compra - desc iMPRIMIR tot_pag FIN.

6) Un hombre desea saber cuanto dinero se genera por concepto de intereses sobre la cantidad que tiene en inversión en el banco. El decidirá reinvertir los intereses siempre y cuando estos excedan a $7000, y en ese caso desea saber cuanto dinero tendrá finalmente en su cuenta.

INICIO

LEER p_int, cap int = cap * p_int

SI int > 7000 ENTONCES capf = cap + int FIN-SI

IMPRIMIR capf FIN

7) Una persona enferma, que pesa 70 kg, se encuentra en reposo y desea saber cuantas calorías consume su cuerpo durante todo el tiempo que realice una misma actividad. Las actividades que tiene permitido realizar son únicamente dormir o estar sentado en reposo. Los datos que tiene son que estando dormido consume 1.08 calorías por minuto y estando sentado en reposo consume 1.66 calorías por minuto.

INICIO

LEER act$, tiemp

SI act$ = “dormido” ENTONCES cg = 1.08 * tiemp

SI NO

cg = 1.66 * tiemp FIN-SI

IMPRIMIR cg FIN

10) Una empresa quiere hacer una compra de varias piezas de la misma clase a una fabrica de refacciones. La empresa, dependiendo del monto total de la compra, decidirá que hacer para pagar al fabricante.

 Si el monto total de la compra excede de $500 000 la empresa tendrá la capacidad de invertir de su propio dinero un 55%, pedir prestado al banco un 30% y el resto lo pagara solicitando un crédito.

 Si el monto total de la compra no excede de $500 000 la empresa tendrá capacidad de invertir de su propio dinero un 70% y el restante 30% lo pagara solicitando crédito al fabricante.

 El fabricante cobra por concepto de intereses un 20% sobre la cantidad que se le pague a crédito.

INICIO

LEER costopza, numpza totcomp = costopza * numpza SI totcomp > 500 000 ENTONCES

cantinv = totcomp * 0.55 préstamo = totcomp * 0.30 crédito = totcomp * 0.15 SI NO

cantinv = totcomp * 0.70 crédito = totcomp * 0.30 préstamo = 0

FIN-SI

int = crédito * 0.20

(4)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 4 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

8) 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).

INICIO

LEER nomb, cve, prec_orig SI cve = 01 ENTONCES

prec_desc = prec_orig - prec_orig * 0.10 SI NO

prec_desc = prec_orig - prec_orig * 0.20 FIN-SI

IMPRIMIR nomb, cve, prec_orig, prec_desc FIN

9) 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%.

INICIO

LEER num_camisas, prec tot_comp = num_camisas * prec SI num_camisas > = 3 ENTONCES

tot_pag = tot_comp - tot_comp * 0.20 SI NO

tot_pag = tot_comp - tot_comp * 0.10 FIN-SI

IMPRIMIR tot_pag FIN

II.b) PROBLEMAS SELECTIVOS COMPUESTOS

1) Leer 2 números; si son iguales que los multiplique, si el primero es mayor que el segundo que los reste y si no que los sume.

INICIO

LEER num1, num2

SI num1 = num2 ENTONCES resul = num1 * num2 SI NO

SI num1 > num2 ENTONCES resul = num1 - num2 SI NO

resul = num1 + num2 FIN-SI

FIN-SI FIN

2) Leer tres números diferentes e imprimir el número mayor de los tres.

INICIO

Leer num1, num2, num3

SI (num1 > num2) and (num1 > num3) ENTONCES mayor = num1

SI NO

SI (num2 > num1) and (num2 > num3) ENTONCES mayor = num2

SI NO

mayor = num3 FIN-SI

FIN-SI

IMPRIMIR mayor FIN

(5)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 5 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

y que estas se pagan al doble de una hora normal cuando no exceden de 8; si las horas extras exceden de 8 se pagan las primeras 8 al doble de lo que se pagan las horas normales y el resto al triple.

INICIO

LEER ht, pph

SI ht < = 40 ENTONCES tp = ht * pph SI NO

he = ht - 40

SI he < = 8 ENTONCES pe = he * pph * 2 SI NO

pd = 8 * pph * 2 pt = (he - 8) * pph * 3 pe = pd + pt

FIN-SI

tp = 40 * pph + pe FIN-SI

IMPRIMIR tp FIN

4) 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 antigüedad en la empresa de acuerdo con la siguiente tabla:

Tiempo Utilidad

Menos de 1 año 5 % del salario

1 año o mas y menos de 2 años

7% del salario

2 años o mas y menos de 5 años

10% del salario

5 años o mas y menos de 10 años 15% del salario

10 años o mas 20% del salario

INICIO

LEER sm, antig

SI antig < 1 ENTONCES util = sm * 0.05 SI NO

SI (antig > = 1) and (antig < 2) ENTONCES util = sm * 0.07

SI NO

SI (antig > = 2) and (antig < 5) ENTONCES util = sm * 0.10

SI NO

SI (antig > = 5) and (antig < 10) ENTONCES util = sm * 0.15

SI NO

util = sm * 0.20 FIN-SI

FIN-SI FIN-SI

FIN-SI

IMPRIMIR util FIN

(6)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 6 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

INICIO LEER tc, b$

SI b$ = ‘blanca’ ENTONCES d=0

SI NO

SI b$ = ‘verde’ ENTONCES d=tc*0.10

SI NO

SI b$ = ‘amarilla’ ENTONCES d=tc*0.25

SI NO

SI b$ = ‘azul’ ENTONCES d=tc*0.50

SI NO d=tc FIN-SI FIN-SI FIN-SI FIN-SI

FIN

6) El IMSS requiere clasificar a las personas que se jubilaran en el año de 1997. Existen tres tipos de jubilaciones: por edad, por antigüedad joven y por antigüedad adulta.

 Las personas adscritas a la jubilación por edad deben tener 60 años o mas y una antigüedad en su empleo de menos de 25 años.

 Las personas adscritas a la jubilación por antigüedad joven deben tener menos de 60 años y una antigüedad en su empleo de 25 años o mas.

 Las personas adscritas a la jubilación por antigüedad adulta deben tener 60 años o mas y una antigüedad en su empleo de 25 años o mas.

Determinar en que tipo de jubilación, quedara adscrita una persona.

INICIO

LEER edad,ant

SI edad >= 60 and ant < 25 ENTONCES IMPRIMIR “la jubilación es por edad”

SI NO

SI edad >= 60 and ant > 25 ENTONCES IMPRIMIR “la jubilación es por edad adulta”

SI NO

SI edad < 60 and ant > 25 ENTONCES

IMPRIMIR “la jubilación es por antigüedad joven” SI NO

iMPRIMIR “no tiene por que jubilarse” FIN-SI

FIN-SI FIN-SI FIN

III) PROBLEMAS HACER PARA

1) Calcular el promedio de un alumno que tiene 7 calificaciones en la materia de Herramientas Informáticas.

INICIO Sum=0 LEER Nom

HACER para c = 1 a 7 LEER calif

Sum = sum + calif FIN-PARA

prom= sum /7 IMPRIMIR prom FIN.

(7)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 7 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

INICIO

HACER para n = 1 a 10 LEER num

cubo = num * num * num cuarta = cubo * num IMPRIMIR cubo, cuarta FIN-PARA

FIN.

3) Leer 10 números e imprimir solamente los números positivos

INICIO

HACER para n = 1 a 10 LEER num

SI num > 0 ENTONCES IMPRIMIR num FIN-SI

FIN-PARA FIN.

4) Leer 20 números e imprimir cuantos son positivos, cuantos negativos y cuantos neutros.

INICIO cn = 0 cp = 0 cneg = 0

HACER para x = 1 a 20 LEER num

SI num = 0 ENTONCES cn = cn + 1 SI NO

SI num > 0 ENTONCES cp = cp + 1 SI NO

cneg = cneg + 1 FIN-SI

FIN-SI FIN-PARA

IMPRIMIR cn, cp, cneg FIN.

5) Leer 15 números negativos y convertirlos a positivos e imprimir dichos números.

INICIO

HACER para x = 1 a 15 LEER num pos = num * -1 IMPRIMIR num, pos FIN-PARA

FIN.

6) Simular el comportamiento de un reloj digital, imprimiendo la hora, minutos y segundos de un día desde las 0:00:00 horas hasta las 23:59:59 horas.

INICIO

HACER para h = 1 a 23 HACER para m = 1 a 59

HACER para s = 1 a 59

IMPRIMIR h, m, s FIN-PARA

(8)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 8 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

7) Suponga que se tiene un conjunto de calificaciones de un grupo de 40 alumnos. Realizar un algoritmo para calcular la calificación media y la calificación mas baja de todo el grupo.

INICIO sum = 0 baja = 9999

HACER para a = 1 a 40 LEER calif sum = sum + calif

SI calif < baja ENTONCES baja = calif FIN-SI

FIN-PARA media = sum / 2 IMPRIMIR media, baja FIN

8) Calcular e imprimir la tabla de multiplicar de un número cualquiera. Imprimir el multiplicando, el multiplicador y el producto.

INICIO LEER num

HACER para X = 1 a 10 resul = num * x

IMPRIMIR num, “ * “, X, “ = “, resul FIN-PARA

FIN.

(9)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 9 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

PROBLEMAS RESUELTOS POR DIAGRAMAS DE NASSI – SCHNEIDERMAN

I) PROBLEMAS SECUENCIALES

1) Diseñarun algoritmo para calcular el área y el perímetro de un rectángulo

Definición del problema

Calcular área y perímetro de un rectángulo

Análisis del problema

Para desarrollar este problema es necesario conocer las fórmulas para obtener tanto el área como el perímetro de un rectángulo.

Sea b = base y h = altura, las fórmulas a utilizar son:

Area = b * h

Perímetro = 2 * (b + h)

Datos de entrada: b y h (base y altura)

Datos de salida: área y perímetro

Procesos:

área = b * h

Perímetro = 2 * (b + h)

Diseño de la solución

INICIO

ENTERO: b, h, a, p

LEER b, h

a = b * h

p = 2 (b + h)

ESCRIBIR "área:", a

ESCRIBIR "perímetro:", p

FIN

2) Un maestro desea saber que porcentaje de hombres y que porcentaje de mujeres hay en un grupo de estudiantes.

Definición del problema

Calcular porcentaje de hombres y mujeres en un grupo.

Análisis del problema

Datos a tener en cuenta: Número hombres Número mujeres Total estudiantes Porcentaje hombres Porcentaje mujeres

Datos de entrada: número hombres, número mujeres

Datos salida: porcentaje hombres, porcentaje mujeres

Procesos:

tot estudiantes = núm. hombres + núm. Mujeres

Porc.hombres = núm. Hombres / tot estudiantes*100

Porc.hombres = núm. mujeres / tot estudiantes*100

Diseño de la solución

INICIO

ENTERO: numm, numh, totest

REAL: porch, porcm

LEER numm, numh

totest = numm + numh

porcm = numm / totest * 100

porch = numh / totest * 100

ESCRIBIR "porcentaje mujeres:", porcm

ESCRIBIR "porcentaje hombres:", porch

FIN

3) Un profesor prepara tres cuestionarios para una evaluación final: A, B y C. Se sabe que se tarda 5 minutos en revisar el cuestionario A, 8 en revisar el cuestionario B y 6 en el C. La cantidad de exámenes de cada tipo se entran por teclado. ¿Cuántas horas y cuántos minutos se tardará en revisar todas las

(10)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 10 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

Definición del problema

Calcular el tiempo, en horas y minutos, requerido para calificar exámenes.

Análisis del problema

Se tienen tres tipos de examen A, B, C y el tiempo en minutos requerido para cada tipo son:

A = 5 B = 8 C = 6

El tiempo en minutos debe ser convertido a horas:

1 hora = 60 minutos

Para pasar de minutos a horas se realiza operación división entera, para conocer los minutos excedentes se utiliza la operación módulo.

Datos de entrada: número exámenes tipo A, B y C

Datos de salida: horas y minutos requeridos

Procesos:

Total A = número tipo A * 5

Total B = número tipo B * 8

Total C = número tipo C * 6

Tiempo total = total A + total B + total C

Horas = tiempo total / 60

Minutos = tiempo total Mod 60

Diseño de la solución

INICIO

ENTERO: numa, numb, num, tota,totb, totc, totmin, horas, minutos

LEER numa, numb, numc

tota = numa * 5

totb = numb * 8

totc = numc * 6

totmin = tota + totb + totc

horas = totmin / 60

minutos = totmin Mod 60

ESCRIBIR "tardará:",horas, "horas y", minutos, "minutos"

FIN

II) PROBLEMAS CONDICIONALES

II.a) PROBLEMAS SELECTIVOS SIMPLES

1. Se desea un algoritmo para obtener el valor absoluto de un número

Definición del problema

Encontrar el valor absoluto de un número

Análisis del problema

Para encontrar el valor absoluto del número es necesario recordar que para los enteros positivos el valor es el mismo, mientras que para los enteros negativos es necesario cambiarlos de signo.

Datos de entrada: número

Datos de salida: valor absoluto

Proceso:

número = número * (-1)

Diseño de la solución

(11)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 11 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

Definición del problema

Identificar el mayor y menor de dos números

Análisis del problema

Datos de entrada: num1, num2

Datos salida: mayor, menor

Proceso: comparación

Diseño de la solución

3. Una empresa desea calcular los nuevos salarios de sus empleados de la siguiente forma: quienes ganan hasta $ 500.000 tendrán un incremento del 10%, quienes devengan más de $ 500.000 y hasta 800.000 recibirán un aumento del 8% y los demás del 5%. ¿Cuál será el valor del aumento? ¿Cuál será el valor del nuevo sueldo?

Definición del problema

Calcular el valor a incrementar y el valor del nuevo sueldo de los empleados.

Análisis del problema

El porcentaje de incremento en el sueldo depende del valor del sueldo actual, los sueldos más bajos tienen un mayor incremento:

10% para sueldo <= $ 500.000

8% para $ 500.000 < sueldo <= $ 800.000 5% para sueldo > 800.000

Datos de entrada: sueldo

Datos de salida: aumento, nuevo sueldo Proceso:

aumento = sueldo * porcentaje donde porcentaje = 5, 8 o 10% nuevo sueldo = sueldo + aumento

(12)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 12 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

II.b) DECISIÓN MÚLTIPLE

1) Una distribuidora de motocicletas tiene una promoción de fin de año que consiste en los siguiente. Las motos marca HONDA tienen un descuento del 5%, las de marca Yamaha del 8% y las Suzuki el 10%, las de otras marcas el 2%.

Definición del problema

Calcular el valor del descuento y el valor a pagar por la motocicleta.

Análisis del problema

Porcentaje descuento = 5% para motos Honda.

Porcentaje descuento = 8% para motos Yamaha

Porcentaje descuento = 10% para motos Suzuki

Porcentaje descuento = 2% para motos otras marcas

Datos de entrada: marca, valor

Datos de salida: descuento, valor a pagar

Proceso:

descuento = valor * porcentaje

Valor neto = valor - descuento

Diseño de la solución

III) PROBLEMAS CICLICOS

III.a) PROBLEMAS CICLO MIENTRAS

1) Crear un algoritmo para mostrar los números del 1 al 10.

Definición del problema

Mostrar listado de números de 1 a 10.

Análisis del problema

Datos de entrada: ninguno

Datos de salida: número

Proceso: ninguno

(13)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 13 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

Este es un algoritmo muy trivial pero permite revisar la aplicación de la estructura de repetición Mientras. Lo primero a tener en cuenta es la declaración e inicialización de la variable: num = 1. En este caso no solo se está declarando una variable de tipo entero, sino también se está asignando un valor inicial, que será el primer número mostrado.

La condición con la cual se implementa el ciclo es num <= 10, dado que num inicia en 1, la primera vez que se encuentra la instrucción mientras, la expresión es verdadera, por tanto se ejecutan las instrucciones que aparecen al interior del ciclo. Después de haber mostrado el contenido de la variable num, éste cambia, se incrementa en 1.

2) Construir un algoritmo que permita leer n números y encontrar el valor promedio, el mayor y el menor

Definición del problema

Encontrar el promedio, el mayor y el menor de varios números

Análisis del problema

Para solucionar este problema, lo primero que hay que plantear es cómo se sabrá cuando terminar la lectura de datos, ya que no se especifica la cantidad de números que serán ingresados y en el planteamiento del problema no se da ninguna condición que permita saber cuando terminar el ciclo. Este tipo de problemas es muy común.

Hay dos formas de abordar este ejercicio, la primera consiste en preguntar al usuario con cuantos números desea trabajar y guardar dicho valor en una variable que se utilizará para establecer el ciclo. La segunda consiste en preguntar después de leer cada dato, si se desea ingresar otro. En este ejercicio se utilizará la primera estrategia.

Datos de entrada:

cantidad de números número

Datos de salida: promedio mayor menor Procesos:

suma = suma + número

promedio = suma / cantidad de números

Diseño de la solución

3. La serie Fibonacci comienza con los números: 0, 1, 1, 2, 3, 5, 8, 13, 21, ... Se requiere un algoritmo para generar los primeros 10 números.

Definición del problema: Generar los 10 primeros números de la serie fibonacci

Análisis del problema

La serie Fibonacci se genera a partir de dos valores iniciales que son el 0 y el 1, que al sumarse dan como resultado 1. El siguiente número se obtiene sumando el último número obtenido con el anterior, en este caso 1 + 1 = 2, luego será 2 + 1 = 3 y así sucesivamente.

Datos de entrada: ninguno Datos de salida: serie Fibonacci Procesos:

a = 0 b = 1 f = a + b

(14)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 14 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

III.a) PROBLEMAS CICLO PARA

1) Crear un algoritmo que permita Imprimir los números del 1 al 10

Definición del problema Imprimir números del 1 al 10

Análisis del problema

Datos de entrada: ninguno

Datos de salida: números (1 ... 10)

Proceso: ninguno

f = a + b

Diseño de la solución

2) Construir un algoritmo que permita Imprimir los números del 5 al 50 con intervalos de 5.

Definición del problema

Imprimir números de cinco en cinco

Análisis del problema

Datos de entrada: ninguno

Datos de salida: números

Proceso: ninguno

Diseño de la solución

3) Construir un algoritmo tal que dado un número n mostre los números menores o igual a éste, en orden descendente.

Definición del problema: Imprimir números en orden descendente

Análisis del problema

Datos de entrada: número

Datos de salida: números

Proceso: ninguno

(15)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 15 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

4) Construir un algoritmo que lea 10 números y muetre la sumatoria, el promedio, el número mayor y el número menor.

Definición del problema

Leer 10 números y sumarlos, determinar el promedio, el número menor y el número mayor.

Análisis del problema Datos de entrada:

número Datos de salida:

sumatoria promedio número menor número mayor Proceso:

suma = suma + número promedio = suma / 10

(16)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 16 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

PROBLEMAS RESUELTOS POR DIAGRAMAS DE FLUJO

1) Construir un algoritmo que permita el ingresar dos números por teclado. El mismo deberá mostrar por pantalla el resultado del promedio de tales números.

DIAGRAMA DE FLUJO:

INICIO

Declarar Variables

Resetear Variables

"Ingrese el 1º núm ero:", a

"Ingrese el 2º núm ero:", a

prom =(a+b)/2

"El Prom edio es: ", prom

(17)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 17 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

2) Construir un algoritmo que permita el ingresar un lote de cuatro números por teclado. El mismo deberá mostrar por pantalla el resultado del promedio de tales números.

DIAGRAMA DE FLUJO:

INICIO

Declarar Variables

Resetear Variables

"Ingrese el 1º núm ero:", a

"Ingrese el 2º núm ero:", a

prom =(a+b+c+d)/2

"El Prom edio es: ", prom

FIN "Ingrese el 3º

núm ero:", c

(18)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 18 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

3) Construir un algoritmo que permita el ingresar un lote de “n” números por teclado. El mismo deberá mostrar por pantalla el resultado del promedio de tales números.

DIAGRAMA DE FLUJO:

INICIO

Declarar Variables

Resetear Variables

"Ingrese la cantidad de

num eros a prom ediar", n

prom =sum /n

"El Prom edio es: ", prom

FIN "Ingrese el

siguiente núm ero", num

cant=cant+1

cant=n

1 1

(19)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 19 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

4) Construir un algoritmo que permita ingresar por teclado un lote de “n” de números naturales, la cantidad “n” también debe ser ingresada por teclado antes del ingreso del lote. El algoritmo deberá determinar la cantidad de números pares ingresados, mostrar el resultado por pantalla y dar la posibilidad de ingresar un nuevo lote o terminar.

NOTA: Observar que la cantidad “n” y los números ingresados deben ser naturales por lo que deberán rechazarse aquellos datos que no satisfagan esta condición.

DIAGRAMA DE FLUJO:

INICIO

Declarar Variables

Resetear Variables

"Ingrese la cantidad de num eros del lote", n

num =[num ]

a = (-1) ^ num

cant=n

a =1

r="S"

r="N"

FIN

cant=cant +1

"La cantidad de num pareses:" cont

cont=cont +1 2

1 "El num ero ingresado es

invalido"

1 "Ingrese el 2

siguiente num ero", num

"Desea reem pezar",r

3 3

"Opcion Invalida"

4

4

5

(20)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 20 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

5) Construir un algoritmo que permita ingresar un lote de diez números por teclado. El mismo deberá mostrar por pantalla el menor de todos los números ingresados.

DIAGRAMA DE FLUJO:

INICIO

Declarar Variables

Resetear Variables

"Ingrese el 1º núm ero",

m enor

"El num ero m enor es",

m enor

FIN "Ingrese el

siguiente num ero", num

num <m enor

m enor=num

cant=cant+1

cant=10

(21)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 21 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

6) Construir un algoritmo que permita el ingreso de un lote de “n” números por teclado. La cantidad n también debe ser ingresada por teclado. El algoritmo deberá mostrar por pantalla el mayor de los números ingresados y su posición en el lote.

DIAGRAMA DE FLUJO:

INICIO

Declarar Variables

Resetear Variables

"Ingrese el 1º núm ero",

m ayor

"El num ero m ayor es", m ayor; "y esta

en ",n; "lugar

FIN "Ingrese el

siguiente num ero", num

num >m ayor

m ayor=num

cant=n

1 1

cant=cant+1

cont=cont+1 "Ingrese la

(22)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 22 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

7) Construir un algoritmo que permita ingresar las dimensiones de los segmentos de los lados de un triángulo. El algoritmo deberá clasificar dicho triángulo según sus lados y mostrar el resultado por pantalla.

DIAGRAMA DE FLUJO:

INICIO

Declarar Variables

Resetear Variables

"Ingrese el 1º lado", a

"Ingrese el 2º lado", b

"Ingrese el 3º lado", c

a=b

a=c b=c

a=c

"El triangulo es equliatero" "El triangulo

es isosceles" "El triangulo

es escaleno"

(23)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 23 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

8) Construir un algoritmo que permita ingresar las dimensiones de tres segmentos por teclado. Dicho algoritmo deberá determinar e informar si tales segmentos pueden formar o no un triángulo.

DIAGRAMA DE FLUJO:

INICIO

Declarar Variables

Resetear Variables

"Ingrese el 1º segm ento", a

"Ingrese el 2º segm ento", b

"Ingrese el 3º segm ento", c

a=b

a=c

b=c

"Los segm entos si pueden form ar un triangulo"

FIN "Los segm entos

(24)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 24 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

9) Construir un algoritmo que permita ingresar por teclado los coeficientes A, B y C de una ecuación cuadrática. El algoritmo deberá calcular y clasificar las raíces de dicha ecuación cuadrática y mostrarla por pantalla.

DIAGRAMA DE FLUJO:

INICIO

Declarar Variables

Resetear Variables

"Ingrese el 1º Coeficiente", a

r=(b^2)-4.a.c

r>0

r=0

x1=((-b)+sqr(r))/2.a x1=((-b)-sqr(r))/2.a

x1=r x2=x1

"Las Raices son reales e iguales", x1 "Raices reales

y distintas, las raices son:"

"x1=" x1 "x2=" x2

"Ingrese el 1º Coeficiente", a

"Ingrese el 1º Coeficiente", a

e=(-b)/2.a i=sqr(-r)/2.a

"Raices com p.conj., las raices son:

"x1=", e, "+", i "x1=", e, "-, i

(25)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 25 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

10) Construir un algoritmo que permita ingresar un número natural, calcule su factorial y lo muestre por pantalla.

NOTA: deberá rechazarse el ingreso del dato si no es un número natural.

DIAGRAMA DE FLUJO:

INICIO

Declarar Variables

Resetear Variables

"Ingrese el num ero a calcular", num

num =[num ]

b=num -abs(num )

b=0 1

"El num ero ingresado es

invalido" 1

2 2

I I = 1a num fact =1

fact =fact.i

I

"El Factorial de"; num ; "es:

"; fact

(26)

HERRAMIENTAS INFORMÁTICAS 4º Año E.E.T. Nº 8013 “SAN JOSE” Página 26 de26

P

rofe

so

r Carl

o

s

I.

V

o

les

11) Construir un algoritmo, que presente un menú en pantalla con las siguientes opciones: Resistencias en serie, Resistencias en Paralelo y Salir. Al seleccionar alguna de estas opciones, el programa deberá permitir el ingreso por teclado de una cantidad “n”de resistencias, también deberá permitir el ingreso por teclado de los valores de las resistencias y hacer las asociaciones correspondientes, mostrando el resultado por pantalla. En el caso de que se ingrese una opción invalida, se deberá rechazar y permitir el reingreso de una opción.

DIAGRAMA DE FLUJO:

INICIO

Dim ensionar Variables

Resetear Variables

"1. Res. Serie 2. Res. Paralelo

3. Salir"

"Ingrese su opción:", r

a=1

a=2

a=3

"Ingrese la cant. de res.", n

I

I "Ingrese la

res.", r

resp=resp+r

"La resistencia equivalente

es:", resp

FIN

I= 1 a n "Ingrese la cant.

de res.", n

I

I "Ingrese la

res.", r

div=div+(1/r)

"La resistencia equivalente

es:", resp I= 1 a n

resp=1/div

1

1 2

2 3

3

"La opcion ingresada es

Referencias

Documento similar

Habiendo organizado un movimiento revolucionario en Valencia a principios de 1929 y persistido en las reuniones conspirativo-constitucionalistas desde entonces —cierto que a aquellas

• La elaboración del marco teórico sobre el proceso de configuración de red en sistemas operativos GNU/Linux, así como el estudio de herramientas informáticas

Comentarios técnicos es una sección que incluye artículos elaborados específicamente para esta sección sobre temas científicos de interés, o sobre conceptos y

Específicamente, el puesto de técnico solicitado tendrá una elevada sinergia con los proyectos Nanogentools (que desarrollará a nivel EU nuevas herramientas informáticas para

Esta información interna obtenida debido a SimDerma ayuda a obtener un conocimiento ampliado y detallado del grado de actuación de los ingredientes en las

Resumen: en este documento describimos una clasificación para sistemas de gestión del conocimiento basándonos en dos características técnicas que consideramos fimdamentales:

Se describen las tendencias actuales a tener en cuenta para implementar este tipo de herramientas informáticas, así como las aplicaciones informáticas existentes en la

Este trabajo aparece como respuesta a ciertos problemas que se están dando en la estimación de los proyectos en la Universidad de las Ciencias Informáticas,