Top Banner

of 20

Algoritmia Ejemplos y Ejercicios

Jul 14, 2015

Download

Documents

Lisbeth Hidalgo
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript

EJEMPLOS Y EJERCICIOS

ALGORITMIA

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica

Ejercicio No: 1Desarrolle un algoritmo que permita leer dos valores distintos, determinar cual de los dos valores es el mayor y escribirlo.

Pseudocdigo Inicio Inicializar variables: A = 0, B = 0 2.Solicitar la introduccin de dos valores distintos Leer los dos valores Asignarlos a las variables A y B Si A = B Entonces vuelve a 3 porque los valores deben ser distintos Si A>B Entonces Escribir A, Es el mayor De lo contrario: Escribir B, Es el mayor Fin_Si

Diagrama de Flujo

Inicio

Introduzca dos valores distintos

A, B A= B No No A> B Si Si

B Es el mayor

A Es el mayor

Fin

Ejercicios propuesto: a. Realizar un algoritmo que permita leer dos valores, determinar cual de los dos valores es elMisin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

51

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informticamenor y escrbalo Realizar un algoritmo que sume dos nmeros.

b.

Ejercicio No: 2Desarrolle un algoritmo que permita leer tres valores y almacenarlos en las variables A, B y C respectivamente. El algoritmo debe imprimir cual es el mayor y cual es el menor. Recuerde constatar que los tres valores introducidos por el teclado sean valores distintos. Presente un mensaje de alerta en caso de que se detecte la introduccin de valores iguales.

Pseudocdigo 1. Inicio 2. Inicializar las variables A, B y C 3. Leer los tres valores 4. Almacenar en las variables A, B y C

Diagrama de Flujo Inicio

A, B, C

5. Si A > B y A > C Entonces 6. Escribir A Es el mayorSino

No

A>B y A >C

Si

B>A y B>C No

Si

A Es el mayor

7. Si B > A y B > C Entonces 8. Escribir B Es el mayorSino

B Es el mayor

C Es el mayor

9. Escribir C Es el mayorFin_Si Fin_Si Fin Fin

Ejercicios propuestos: a. Es este algoritmo la solucin perfecta al ejercicio anterior? Razone su respuesta. b. De ser necesario qu cambios deber realizar? Indquelos. c. Desarrolle un algoritmo que permita leer tres valores y almacenarlos en las variables A, B, y Crespectivamente. El algoritmo debe indicar cual es el menor. Asumiendo que los tres valores introducidos por el teclado son valores distintos.Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

52

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica

d. Desarrolle un algoritmo que lea cuatro nmeros diferentes y a continuacin imprima el mayor de loscuatro nmeros introducidos y tambin el menor de ellos.

Ejercicio No: 3Desarrolle un algoritmo que realice la sumatoria de los nmeros enteros comprendidos entre el 1 y el 10, es decir, 1 + 2 + 3 + . + 10.

Pseudocdigo1. Inicio 2. Declaracin de variables: N= 0, Suma = 0 3. Asignacin Contador : N=N+1 4. Asignacin Acumulador: Suma = Suma + N 5. Si N = 10 Entonces 6. Escribir Suma

Diagrama de Flujo

Inicio

N=0 Suma = 0

N=N+1 Suma = Suma + N No N = 10 Si Suma

7. De lo contrario, Repetir desde el paso 3 8. Fin_Si 8. Fin

Fin

Ejercicios propuestos: a. Desarrolle un algoritmo que realice la sumatoria de los nmeros enteros mltiplos de 5,comprendidos entre el 1 y el 100, es decir, 5 + 10 + 15 +. + 100. El programa deber imprimir los nmeros en cuestin y finalmente su sumatoria

b. Desarrolle un algoritmo que realice la sumatoria de los nmeros enteros pares comprendidos entreMisin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

53

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informticael 1 y el 100, es decir, 2 + 4 + 6 +. + 100. El programa deber imprimir los nmeros en cuestin y finalmente su sumatoria

c. Desarrolle un algoritmo que lea los primeros 300 nmeros enteros y determine cuntos de ellos sonimpares; al final deber indicar su sumatoria.

Ejercicio No: 4Determinar la hipotenusa de un tringulo rectngulo conocidas las longitudes de sus dos catetos. Desarrolle el algoritmo correspondiente.

Pseudocdigo Inicio 1. Declaracin de Variables: CatA= 0, CatB=0

Diagrama de Flujo

Inicio

CatA=0, CatB=0

2. Leer el valor de cada cateto 3. Almacenarlo en la variable CatAy CatB

CatA, CatB

4. Calcular el valor de Hip con laformula indicada

Hip =CatA + CatB

5. Escribir el valor de laHipotenusa Fin

Hipotenusa

Fin

Ejercicio propuestos:a. Qu falta en este algoritmo? Qu errores presenta? b. Desarrollar un algoritmo que calcule el rea de un cuadrado.

Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

54

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica

Ejercicio No: 5Desarrolle un algoritmo que permita determinar el rea y volumen de un cilindro dado su radio (R) y altura (H).

Pseudocdigo

Diagrama de Flujo

Inicio 1.Declaracin de variables: R = 0, H = 0

2. Leer el valor de Radio (R) y Altura (H) 3. Calcular el Volumen aplicando la frmula 4.Calcular el valor del aplicando la frmula respectiva rea

5. Escribir el valor del rea y del VolumenFin

Ejercicio:a. Realiza un algoritmo que le permita determinar el rea de un rectngulo.

Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

55

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica

Ejercicio No: 6Desarrolle un algoritmo que permita leer un valor cualquiera N y escriba si dicho nmero es par o impar.

Pseudocdigo 1. Inicio

Diagrama de Flujo

2. Declaracin de variables: NLeer un nmero Asignarlo a la variable N 5. Si el residuo de dividir a N entre 2 es igual a cero 6. Si es Si: Entonces: Escribir Es par 7. Sino: Escribir Es imparNo N es Impar

Inicio

N=0

N

Si N es Par

8. Fin_Si9. FinFin

Ejercicios propuesto:a. Complete el algoritmo con la instruccin o instrucciones necesarias. b. Desarrolle un algoritmo que le permita determinar de una lista de nmeros: b.1. Cuntos estn entre el 50 y 75, ambos inclusive? b.2. Cuntos mayores de 80?Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

56

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informticab.3. Cuntos menores de 30? El algoritmo debe finalizar cuando n (el total de nmeros de la lista), sea igual a 0.

Ejercicio No: 7 Desarrolle un algoritmo que permita convertir calificaciones numricas, segn la siguiente tabla: A = 19 y 20, B =16, 17 y 18, C = 13, 14 y 15, D = 10, 11 y 12, E = 1 hasta el 9. Se asume que la nota est comprendida entre 1 y 20. Pseudocdigo Diagrama de Flujo

Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

57

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica

1.Inicio

InicioNuevaNota =A

2. Declaracin de variables: NuevaNota = Carcter 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.Fin_Si Leer registros hasta fin de archivo

Registro

Si Nota>=19 OR Nota=19 OR Nota=16 OR Nota=16 OR Nota=13 OR Nota=13 OR Nota=10 OR Nota=10 OR Nota=1 OR Nota=1 OR Nota= 1 Entonces HoraEstadia=HoraEstadia + 1 Fin_SI Hora Restante = HoraEstadia 1 Pago = 1000 + (HoraRestante * 600)HorasRestante=HoraEstadia - 1 HoraEstadia> =1 Si Fraccion>=1 No Si HoraEstadia=HoraEstadia +1 No Pago = 1000

10. 11.

12. De lo contrario

13.14. 15. Fin

Pago = 1000 Imprimir resultado

Pago = 1000 + (Horas Restantes * 600)

Paga, Pago

Fin

Ejercicio propuesto:Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

61

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica

a.

Realice un algoritmo que determine el pago a realizar por la entrada a un espectculo donde se pueden comprar slo hasta cuatro entrada, donde al costo de dos entradas se les descuenta el 10%, al de tres entrada el 15% y a la compra de cuatro tickets se le descuenta el 20 %.

Ejercicio No: 11Realice un algoritmo que a partir de proporcionarle la velocidad de un automvil, expresada en kilmetros por hora, proporcione la velocidad en metros por segundo.

Pseudocdigo 1. Inicio

Elabore Diagrama de Flujo

2. Declaracin de Variables:Vel = 0

3. Leer Datos: Vel 4. Versal = (Vel * 1000) / 36005. Imprimir resultado 6. Fin

Ejercicio propuesto: a. Desarrolle un algoritmo que lea la velocidad en metros por segundo y la convierta a kilmetros porMisin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

62

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informticahora.

Ejercicio No: 12Desarrolle un algoritmo que permita calcular Promedio de Notas; finaliza cuando N = 0.

Pseudocdigo1. Inicio Declaracin de Variables:

Diagrama de Flujo

2.

Inicio N = 0, Suma = 0, Cuenta= 0, Acumula= 0

N = 0, Promedio = 0, Acumula= 0 3. Leer N Mientras N 0 hacer Cuenta = Cuenta + 1 Acumula = Acumula + N Fin Mientras Promedio = Acumula/Cuenta Imprimir Promedio:; PromedioAcumula = Acumula + N N 0 Si Cuenta = Cuenta + 1 No N

4.5. 6. 7. 8. 9.

10. Fin

Retorn o

Promedio = Acumula / Cuenta

Promedio: , Promedio

Fin

Ejercicio propuesto:Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

63

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica

a. Desarrolle un algoritmo que permita calcular la media aritmtica.

Ejercicio No: 13Desarrolle un algoritmo para la empresa Constructora Tecnovivir Casas C.A., que le permita calcular e imprimir la nmina para su cancelacin a un total de 50 obreros calificados a quienes debe cancelar por horas trabajadas. La hora trabajada se paut en 30.000 Bolvares.

Pseudocdigo

Diagrama de Flujo

Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

64

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica

Inicio

1. Inicio 2. Declaracin de Variables: Numero_Obreros =50 Numero_Hora_Trabajadas = 0 Total_nomina = 0Numero_Obreros=50, Total_nomina=0, Numero_Horas_Trabajadas=0 Titulos

3. Imprimir lneas de ttulos de la nmina 4. Leer Datos 5. Mientras Numero_Obreros>0 6. Salario = Numero_Hora_Trabajada * 30 7. Total_nmina= Totalnmina + Salario 8. Numero_Obreros = Numero_Obreros - 1 9. Imprimir Registro 10. Leer Datos11. Fin_Mientras

Datos No

Nmero_Obreros >0

Si Salario = Numero_Hora_Trabajada * 30000

Total_nomina=Total_nomina + Salario

12. 13. Fin

Imprimir Total : , Total_nminaNumero_Obreros = Numero_Obreros - 1

Registro

Datos Retorn o

Total:, Total_nomina

Fin

Ejercicios propuestos: a. Qu pasara si no se decrementa al nmero de obreros en uno? b. Realice el mismo algoritmo utilizando la herramienta FOR, c. Realice el mismo algoritmo utilizando la herramienta REPEAT.

Ejercicio No: 14Desarrolle un algoritmo que funcione como caja registradora,

Pseudocdigo

Diagrama de Flujo

Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

65

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica1. Inicio 2. Declaracin de Variables: Sub_total=0,Total = 0Inicio Subtotal = 0, Total = 0 Codigo_Producto, Precio Titulos

3. Ingrese Cdigo de Producto yPrecio:

4. Almacenar Codigo_Producto,Precio

5. Imprimir lneas de ttulos delrecibo de pagoCdigo_Producto

No

6. Mientras Cdigo_Producto

Si Subtotal = Subtotal + Precio

7. 8.Precio

Subtotal = Subtotal + Precio Imprimir Codigo_Producto,Cdigo_Producto, Precio

9.

Ingrese Cdigo de Producto y Precio: 10. Fin_Mientras 11. IVA = Subtotal * 0,15 12. Total = Subtotal + IVA

Cdigo_Producto, Precio Retorn o

IVA= Subtotal *0,15, Total = Subtotal + IVA

13. Imprimir Sub Total : , Subtotal 14. Imprimir IVA : 15. Imprimir Total: 16. FinEjercicios propuestos: , IVA , Total

SubTotal:, Subtotal IVA:, IVA Total:, Total

Fin

Realice el mismo algoritmo utilizando la herramienta IF-THEN ELSE.

Ejercicio No: 15Desarrolle un algoritmo que permita determinar a partir de un nmero de das, ingresado por pantalla, Cuntos aos, meses, semanas y das; constituyen el nmero de das proporcionado utilizando la estructura Mientras o While.Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

66

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica

Pseudocdigo

Diagrama de FlujoInicio Aos=0, Meses= 0, Semanas=0, Dias=0

Elabore el pseudocdigo

Num_dias

Dias = Num_dias

Mientras Dias > 365

Si

Aos = Aos+ 1 Dias = Dias - 365

Dias

Retorno

NoMientras Dias > 30

Meses = Meses +1 Dias = Dias - 30

Dias

Retorno

Mientras Dias > 7

Meses = Meses +1 Dias = Dias - 7

Dias

Retorno

En , Num_dias, Das Hay :, Aos, Aos, , Meses, Meses y Dias, Das

Fin

Ejercicios propuestos: a. Desarrolle el algoritmo anterior utilizando la herramienta Repetir (REPEAT). b. Desarrolle el algoritmo anterior utilizando la herramienta Si-Entonces-De lo contrario-Fin_SI (IF-THEN-ELSEEND-IF)

Ejercicio No: 16Determine el resultado del siguiente diagrama de flujo, realice el pseudocdigo. Elabore su enunciado.

Pseudocdigo

Diagrama de Flujo

Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

67

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica

Elabore el pseudocdigo

Inicio BC=0, BV= 0, BD=0, BC2=0, BM=0

N

C=N Si

N >= 50000

BC = BC + 1 C = C - 50000

C

Retorno

NoN >= 20000

Si

BV = BV +1 C = C - 20000

C

Retorno

NoN >= 10000

Si

BD = BD +1 C = C - 10000

C

Retorno

No NoN >= 5000

Si

BC2 = BC2 +1 C = C - 5000

C

Retorno

No SiN >= 1000

BM = BM +1 C = C - 1000

C

Retorno

No Resto = C

N, BC, BV, BD, BC2, BM, Resto

Fin

Enunciado:

Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

68

Repblica Bolivariana de Venezuela Ministerio de Educacin Superior Fundacin Misin Sucre

Programa Nacional de Formacin en Sistemas e Informtica

Bibliografa

Barcons Gloria T (1991): Cardivillo Carlos J y Ramrez Jess Alberto, Computacin II, Universidad Nacional Abierta, Caracas. Brassard G. y Bratley P(2000): Fundamentos de Algoritmia, Prentice may. Joyanes Aguilar, L (2003): Fundamentos de programacin, Algoritmos y Estructuras de datos y Objetos, Madrid, McGraw-Hill. Torrealba Javier (2004): Computacin I, Universidad Nacional Abierta, Caracas

Misin Sucre y la Municipalizacin del Programa Nacional en Sistemas e Informtica

69