taller diagramas de flujo y algoritmos

13
PAOLA ANDREA BETANCUR ZAMBRANO ADSI – 600182 INSTRUCTOR: IVAN DANIEL VELA SENA – CENIGRAF TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS Ejercicio No: 1 a. Realizar un algoritmo que permita leer dos valores, determinar cual de los dos valores es el menor y escríbalo: RTA: Proceso ejercicio_1 Escribir "BIENVENIDO" Escribir "POR FAVOR INTRODUZCA DOS VALORES" Escribir "INGRESE EL PRIMER NUMERO" Leer A Escribir "INGRESE EL SEGUNDO NUMERO" Leer B SI A=B Entonces Escribir "ERROR" FinSi Si A<B Entonces Escribir "EL PRIMER NUMERO ES MENOR QUE EL SEGUNDO" FinSi Si B<A Entonces Escribir "EL SEGUNDO ES MENOR QUE EL PRIMERO" FinSi FinProceso

Upload: paobetancur

Post on 29-Jun-2015

4.441 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

PAOLA ANDREA BETANCUR ZAMBRANO

ADSI – 600182

INSTRUCTOR: IVAN DANIEL VELA

SENA – CENIGRAF

TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

Ejercicio No: 1

a. Realizar un algoritmo que permita leer dos valores, determinar cual de los dos valores es el menor y escríbalo:

RTA:

Proceso ejercicio_1Escribir "BIENVENIDO"Escribir "POR FAVOR INTRODUZCA DOS VALORES"Escribir "INGRESE EL PRIMER NUMERO"Leer AEscribir "INGRESE EL SEGUNDO NUMERO"Leer BSI A=B Entonces

Escribir "ERROR"FinSi

Si A<B EntoncesEscribir "EL PRIMER NUMERO ES MENOR QUE EL SEGUNDO"

FinSiSi B<A Entonces

Escribir "EL SEGUNDO ES MENOR QUE EL PRIMERO"FinSi

FinProceso

Page 2: TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

b. Realizar un algoritmo que sume dos números:

Proceso SUMA_DE_DOS_DIGITOSEscribir "BIENVENIDO"Escribir "POR FAVOR INTRODUZCA LA CIFRAS QUE DESEE SUMAR"Escribir "INGRESE EL PRIMER NUMERO"Leer AEscribir "INGRESE EL SEGUNDO NUMERO"Leer BSUMA<-A+B

Escribir "EL RESULTADO ES:"Escribir SUMA

FinProceso

Ejercicio No: 2

a. ¿Es este algoritmo la solución perfecta al ejercicio anterior? Razone su respuesta.

RTA:La solución puede decirse que es la más acertada debido a que es fácil de comprender al ejecutarse.

b. De ser necesario ¿qué cambios deberá realizar? Indíquelos.:

SI C>A Y C>B EntoncesEscribir CEscribir "ES EL MAYOR";

En vez de solo colocar:

Escribir C “Es el mayor”

c. Desarrolle un algoritmo que permita leer tres valores y almacenarlos en las variables A, B, y C Respectivamente. El algoritmo debe indicar cual es el menor. Asumiendo que los tres valores introducidos por el teclado son valores distintos.

Page 3: TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

RTA:

Proceso MENOR_VALOREscribir "BIENVENIDO"Escribir "POR FAVOR INTRODUZCA DOS VALORES"Escribir "INGRESE EL PRIMER NUMERO"Leer AEscribir "INGRESE EL SEGUNDO NUMERO"Leer BEscribir "INGRESE EL TERCER NUMERO"Leer CSI A<B Y A<C Entonces

Escribir A Escribir "ES EL MENOR";

SinoSI B<A Y B<C Entonces

Escribir BEscribir "ES EL MENOR"

SinoSI C<A Y C<B EntoncesEscribir CEscribir "ES EL MENOR"

FinSiFinSiFinSi

FinProceso

c. Desarrolle un algoritmo que lea cuatro números diferentes y a continuación imprima el mayor de los cuatro números introducidos y también el menor de ellos

RTA:

Proceso cuatro_numerosEscribir "BIENVENIDO"Escribir "POR FAVOR INTRODUZCA CUATRO VALORES"Escribir "INGRESE EL PRIMER NUMERO"Leer AEscribir "INGRESE EL SEGUNDO NUMERO"Leer BEscribir "INGRESE EL TERCER NUMERO"Leer CEscribir "INGRESE EL CUARTO NUMERO"Leer DSI A>B Y A>C Y A>D Entonces

Escribir A

Page 4: TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

Escribir "ES EL MAYOR"SinoSI B>A Y B>C Y B>D Entonces

Escribir B, "ES EL MAYOR"SinoSI C>A Y C>B Y C>D Entonces

Escribir C, "ES EL MAYOR"SinoEscribir D, "ES EL MAYOR";

FinSiFinSiFinSi

SI A<B Y A<C Y A<D EntoncesEscribir A, "ES EL MENOR"

SinoSI B<A,B<C Y B<D Entonces

Escribir B, "ES EL MENOR"SinoSI C<A Y C<B Y C<D Entonces

Escribir C, "ES EL MENOR"Escribir D, "ES EL MENOR"

FinSiFinSiFinSi

FinProceso

Ejercicio No: 3

a. Desarrolle un algoritmo que realice la sumatoria de los números enteros múltiplos de 5, comprendidos entre el 1 y el 100, es decir, 5 + 10 + 15 +…. + 100. El programa deberá imprimir los números en cuestión y finalmente su sumatoria.

RTA:

Proceso SUMATORIA_DE_LOS_MULTIPLOS_DE_5Escribir "BIENVENIDO"Escribir "PROGRAMA QUE CALCULA LA SUMATORIA DE LOS MULTIPLOS DE 5 HASTA 100 "Escribir "LOS NUMEROS SON:"N<-0SUMA<-0Mientras N<=19 Hacer

Page 5: TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

N<-N+1M<-N*5SUMA<-SUMA+M

Escribir MFinMientrasEscribir "EL RESULTADO ES:"Escribir SUMAFinProceso

b. Desarrolle un algoritmo que realice la sumatoria de los números enteros pares comprendidos entre el 1 y el 100, es decir, 2 + 4 + 6 +…. + 100. El programa deberá imprimir los números en cuestión y finalmente su sumatoria.

RTA:

Proceso SUMATORIA_DE_NUMEROS_PARESEscribir "BIENVENIDO"Escribir "PROGRAMA QUE CALCULA LA SUMATORIA DE LOS MULTIPLOS DE 5 HASTA 100 "Escribir "LOS NUMEROS SON:";N<-0SUMA<-0Mientras N<=50 HacerN<-N+1M<-N*2SUMA<-SUMA+M

Escribir MFinMientrasEscribir "EL RESULTADO ES:"Escribir SUMAFinProceso

c. Desarrolle un algoritmo que lea los primeros 300 números enteros y determine cuántos de ellos son impares; al final deberá indicar su sumatoria.

RTA:

Ejercicio No: 4

a. ¿Qué falta en este algoritmo? ¿Qué errores presenta?

RTA:

Page 6: TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

En el algoritmo se necesitaba una variable mas ya que la manera correcta de poder hallar la hipotenusa es:

1. Cuando se calcula la hipotenusa aplicamos directamente el Teorema de Pitágoras

2. Sustituimos cada cateto por su valor:el cateto x por 4 , el cateto y por 3

3. Realizamos los cuadrados

4. Sumamos

5. Como la hipotenusa está elevada al cuadrado, hay que hacer la raíz

6. Solución final:la hipotenusa vale 5 1

El algoritmo correcto seria:

b. Desarrollar un algoritmo que calcule el área de un cuadrado.RTA:

Proceso AREA_DEL_CUADRADOEscribir "BIENVENIDO"Escribir "PROGRAMA QUE CALCULA EL AREA DE UN CUADRADO"Escribir "POR FAVOR INGRESE LA MEDIDA DE UNO DE LOS LADOS DEL CUADRADO"Leer LA<-L*LEscribir A, "EL AREA ES:"

FinProceso

Ejercicio No: 5

a. Realiza un algoritmo que le permita determinar el área de un rectángulo:

1 http://platea.pntic.mec.es/curso20/5_edicionhtml/2007/html11/calcular_hipotenusa.html

Page 7: TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

RTAProceso AREA_DE_UN_RECTANGULO

Escribir "BIENVENIDO"Escribir "PROGRAMA QUE CALCULA EL AREA DE UN RECTANGULO"Escribir "POR FAVOR INGRESE LA MEDIDA DE UNO DE LOS LADOS DEL RECTANGULO"Leer HEscribir "POR FAVOR INGRESE LA MEDIDA DE LA BASE DEL RECTANGULO";Leer B;A<-H*BEscribir A, "EL AREA ES:"

FinProceso

Ejercicio No: 6

a. Complete el algoritmo con la instrucción o instrucciones necesariasRTA:Proceso diferencia_par_imparescribir "escribir el numero"leer n;mo<- n mod 2si mo =0 Entoncesescribir "el numero es par"sinosi mo<>0 entonces escribir "el numero es impar"FinSiFinSi

FinProceso

b. Desarrolle un algoritmo que le permita determinar de una lista de números:RTA:

b.1. ¿Cuántos están entre el 50 y 75, ambos inclusive?

b.2. ¿Cuántos mayores de 80?

b.3. ¿Cuántos menores de 30?

El algoritmo debe finalizar cuando n (el total de números de la lista), sea igual a 0.

Ejercicio No: 7

Page 8: TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

a. Realiza el mismo algoritmo utilizando Mientras (While); también hazlo utilizando En Caso (Case)

Proceso CALIFICACION_DE_NOTAS_ESTRUCTURA_MIENTRASESCRIBIR "BUENOS DIAS";REPETIR ESCRIBIR "POR FAVOR DIGITE LA ASIGNACION DE NOTA , RECUERDE SOLO SE PUEDE UNO A LA VEZ";LEER NNOTA;si NNOTA>1 ENTONCES ESCRIBIR "ERROR, RECUERDE ES SOLO UNA";FinSiCONT<-1;ACU<-0;Mientras CONT<=NNOTA HacerESCRIBIR "POR FAVOR INGRESE EL VALOR DE LA NOTA",CONT;LEER NOTA;CONT<-CONT+1;ACU<-ACU+NOTA;SI (ACU>=19) O (ACU=20) EntoncesESCRIBIR "A";FinSiSI (ACU=16),(ACU=17) O (ACU=18) EntoncesESCRIBIR "B";FinSiSI (ACU=13),(ACU=14) O (ACU=15) ENTONCES ESCRIBIR "C";FinSiSI (ACU=10),(ACU=11) O (ACU=12) EntoncesESCRIBIR "D";SinoSI (ACU=1) O (ACU<=9) ENTONCES ESCRIBIR "P,PESIMO, ESTUDIE MAS";

FinSi FinSi FinMientrasPROM<-ACU/(CONT-1);ESCRIBIR " SU PROMEDIO ES ",PROM;Hasta Que NNOTA=1FinProceso

---------------------------------------------------------------------------------------------------------------------

Page 9: TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

Ejercicio No: 8

a. Desarrolle un algoritmo que permita realizar la escritura de los primeros 100 números naturales utilizando la estructura Mientras (While).

Proceso CIEN_NUMEROSEscribir "BIENVENIDO"Escribir "ESTE ES UN PROGRAMA QUE CMUESTRA LOS 100 PRIMEROS NUMEROS

NATURALES"N<-0

SUMA<-0Mientras N<=99 HacerN<-N+1escribir N FinMientrasFinProceso

Ejercicio No: 9

a. ¿Qué falta en este algoritmo? ¿ Qué errores presenta?

b. Realice un algoritmo que determine los veinte primeros números, ¿Cuáles son múltiplos de 2?.

Proceso diagrama_de_flujo_9_numero_primoescribir "buenos dias";cont<-1;acu<-0;mientras cont<=20 hacer escribir "por favor digite un numero entre 1 y 20";leer n;cont<-cont+1;acu<-acu+n;si n mod 2<>0 entonces escribir "el numero no es multiplo de dos";Sinosi n mod 2=0 entonces escribir "el numero es multiplo de dos";FinSi FinSiFinMientras

Page 10: TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

RTA:

c. Realice un algoritmo que determine cuantos minutos hay en 5 horas.RTA:

Proceso MINUTOS_EN_HORASEscribir "PROGRAMA QUE CALCULA LOS MINUTOS EN 5 HORAS"TIEMPO_HORAS<-60*5;Escribir TIEMPO_HORAS

FinProceso

Ejercicio No: 10

a. Realice un algoritmo que determine el pago a realizar por la entrada a un espectáculo donde se puedencomprar sólo 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 %.

Proceso costo_de_las_entradas_diagrama_de_flujo_diezescribir "buenos dias";dimension boletas [4];para b<-1 hasta 4 con paso 1 hacer escribir " por favor digite el valor de la boleta numero ",b;leer boletas[b];FinParasi boletas[1]=0 y boletas[2]=0 entonces b1<-boletas[4]/100*10;b2<-boletas[3]/100*10;b3<-b1+b2;escribir "el descuento de su boleta es: ",b3;Sinosi boletas[4]=0 y boletas[3]=0 entonces b4<-boletas[1]/100*10;b5<-boletas[2]/100*10;b6<-b4+b5;escribir "el descuento de su boleta es: ",b6;sino si boletas[1],boletas[2],boletas[3],boletas[4]<>0 Entoncesb1<-boletas[4]/100*10; b2<-boletas[3]/100*10;b4<-boletas[1]/100*10; b5<-boletas[2]/100*10;

Page 11: TALLER DIAGRAMAS DE FLUJO Y ALGORITMOS

b6<-b4+b5;b3<-b1+b2;d1<-b3+b6;escribir " su descuento de boletas es: ",d1;sino d2<-d1(b3/2); escribir "su descuento de boleta es: ",d2;FinSiFinSiFinSi

FinProceso

Ejercicio No: 11

a. Desarrolle un algoritmo que lea la velocidad en metros por segundo y la convierta a kilómetros por hora.

Ejercicio No: 12

a. Desarrolle un algoritmo que permita calcular la media aritmética.

Ejercicio No: 13

a. ¿Qué pasaría si no se decrementa al número de obreros en uno?

b. Realice el mismo algoritmo utilizando la herramienta FOR,

c. Realice el mismo algoritmo utilizando la herramienta REPEAT.

Ejercicio No: 14

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