Dom Algoritmos

38
Instrucción de control 1. Se tiene 02 valores A= 40 y B= 20 se desea que A=20 y que B=40 Definir los objetos Datos de E/S Objetos_Datos de Entreda:A,B Objetos_Datos de Salida :Intercambio Pseudocodigo: Inicio Leer A,B Si (A>B) entonces Aux.=A A=B B=Aux. Fin del si Escribir A, B Fin Inicio A, B A>B Aux=A A>B B=aux A, B Fin V F 1 Ing. Daniel Osorio Maldonado

Transcript of Dom Algoritmos

Instrucción de control1. Se tiene 02 valores A= 40 y B= 20 se

desea que A=20 y que B=40Definir los objetos Datos de E/SObjetos_Datos de Entreda:A,BObjetos_Datos de Salida :IntercambioPseudocodigo: Inicio Leer A,B Si (A>B) entonces Aux.=A A=B B=Aux. Fin del si Escribir A, B Fin

Inicio

A, B

A>B

Aux=AA>B

B=aux

A, B

Fin

V

F

1Ing. Daniel Osorio Maldonado

2. Ingresar desde el teclado el valor de un numero y decir si es par

• Pseudocodigo:

Inicio

Leer A,B

Si (residuo (A/2)=0) entonces

mensaje= “A es par”

Fin del si

Escribir mensaje

Fin

A

Residuo (A/B)=0

A es par

mensaje

Fin

Inicio

F

V

2Ing. Daniel Osorio Maldonado

3. Se dan 2 números, es decir si son divisibles entre si:

• Pseudocodigo:

Inicio

Leer A,B

Si A=B then

mensaje= “son divisibles

entre si”

Fin del si

Escribir mensaje

Fin

A, B

A=B

mensaje

Fin

Inicio

Son divisibles entre si

F

V

3Ing. Daniel Osorio Maldonado

4. Decir si un numeró es divisible de 13

• Pseudocodigo:

Inicio

Leer A

Si (residuo (A/13)=0) then

mensaje= “Es divisibles

por 13”

Fin del si

Escribir mensaje

Fin

A

Residuo (A/13)=0

mensaje

Fin

Inicio

Es divisibles por 13 F

V

4Ing. Daniel Osorio Maldonado

5. Decir si un numeró es divisible de 17

. Pseudocodigo:

Inicio

Leer A

Si (residuo(A/17)=0) then

mensaje= “Es divisibles

por 17”

Fin del si

Escribir mensaje

Fin

A

Residuo (A/17)=0

mensaje

Fin

Inicio

Es divisibles por 17 F

V

5Ing. Daniel Osorio Maldonado

6. Decir si un numeró es divisible de 19

• Pseudocodigo:

Inicio

Leer A

Si (residuo(A/19)=0) then

mensaje= “Es divisibles

por 19”

Fin del si

Escribir mensaje

Fin

A

Residuo(A /19)=0

mensaje

Fin

Inicio

Es divisibles por 19 F

V

6Ing. Daniel Osorio Maldonado

7. Decir si un numeró es divisible de 23

Pseudocodigo

Inicio

Leer A

Si (residuo(A/23)=0) then

mensaje= “Es divisibles

por 23”

Fin del si

Escribir mensaje

Fin

A

Residuo(A/23)=0

mensaje

Fin

Inicio

Es divisibles por 23 F

V

7Ing. Daniel Osorio Maldonado

• Hallar el mayor de 4 numeros distintos

Inicio

Fin

B>C

B>DC>D

A>C

C>D A>D

A>B

N=D N=C N=D N=B N=D N=C N=D N=A

N

A,B,C,D

8Ing. Daniel Osorio Maldonado

• Pseudocodigo:

Inicio

Leer Q

b200=entero(Q/200)

Q= residuo(Q/200)

b100=entero(Q/100)

Q= residuo(Q/100)

b50=entero(Q/50)

Q= residuo(Q/50)

b20=entero(Q/20)

Q= residuo(Q/20)

b10=entero(Q/10)

Q= residuo(Q/10)

Escribirb200,b100,b50,b20,b10

Fin

Inicio

Qb200=entero(Q/200)

b100=entero(Q/100)

Q= resto(Q/100)b20=entero(Q/20)

b50=entero(Q/50)

Q= resto(Q/20)

Q= resto(Q/50)

Q= resto(Q/200)

b10=entero(Q/10)

Q= resto(Q/10)

Fin

b200,b100,b50,b20,10

9Ing. Daniel Osorio Maldonado

Se tiene 2 valores distintos desordenado se desea ordenar ascendentemente.

_-Metodo de la burbuja._-uno de ellos es mayor que otros.• Pseudocodigo: Inicio Leer A,B,C Si (A>C) entonces aux=A A=C C=aux Fin del si Si (B>C) entonces aux=B B=C C=aux Fin del si Si (A>C) entonces aux=A A=B B=aux Fin del si Escribir A,B,C

Fin

Inicio

A,B,C

A>C

B>C

A>B

aux=AA=C

C=aux

aux=BB=C

C=aux

aux=AA=B

B=aux

A,B,C

Fin

F

V

V

F

V

F

10Ing. Daniel Osorio Maldonado

Inicio

A,B,C

A>B

A>CB>C

M=AM=B M=CM=C

M

Fin 11Ing. Daniel Osorio Maldonado

Un trabajador elabora 40 horas a la semana(L-V)= 8 horas , extras se paga 50%mas de la tarifa normal

.Pseudocodigo: Inicio Leer A,B Si(Ht<=40) entonces Sb=Tn*40 sinoHe=(Ht-40)Sb=Tn*40+He(0,5*Tn*40) = Tn*40(Th*0,5)Fin del siEscribir Sb Fin

Inicio

He=(Ht-40)Sb=Tn*40+He(0,5*Tn*40)

=Tn*40(Th*0,5)Sb=Tn*40

Ht

Sb

FIN

F v

12Ing. Daniel Osorio Maldonado

Hallar el mayor de 5 numeros distintos Inicio

fin

A,,B,C,D

A>B

B>CA>C

C>D B<D C>D A>D

D>E C>E D>E B>E C>E D>E

N=E

N=D

N=E

N=C

N=E

N=D

N=E

N=B

N=E

N=E

N=D

N=C

N=E

N=D

N=E

N=A

D>E A>E

N 13Ing. Daniel Osorio Maldonado

•Resolver una ecuacion con una incognita de la forma

• Pseudocodigo: Inicio Leer A,B Si A=0 entonces mensaje”no existe solucion” sino Si B=0 entonces X=0 sino X=-B/A Fin del si Fin del si Escribir resultado Fin

Inicio

A,B

A=0

B=0 No hay solucion

X=0

X=-A/B

Resultado

Fin

F V

V

F

14Ing. Daniel Osorio Maldonado

Instrucción de control con alternativa doble

• Un algoritmo que determine el mes del año y la estación:

Pseudocodigo:Caso A Caso 1….. M = EneroCaso 2…... M = FebreroCaso 3….. M = MarzoCaso 4…...M = AbrilCaso 5….. M = MayoCaso 6…...M = JunioCaso 7….. M = JulioCaso 8…...M = AgostoCaso 9….. M = SeptiembreCaso 10…..M = OctubreCaso 11…..M = NoviembreCaso 12…..M = Diembre Fin del caso

Caso ACaso 1 hasta 3…...X = VeranoCaso 4 hasta 6….. X = OtoñoCaso 7 hasta 9…...X = InviernoCaso 10 hasta12….X=PrimaveraCaso XFin del caso

15Ing. Daniel Osorio Maldonado

Inicio

A

1

12

2

3

4

11

A

A

Enero

Febrero

Marzo

Abril

Noviembre

Diciembre

1 hasta 3

4 hasta 6

7 hasta 9

10 hasta 12

Verano

Otoño

Invierno

Primavera

E

Fin del caso

M

Fin del caso

Fin

16Ing. Daniel Osorio Maldonado

Se tiene una serie de notas de un curso y se desea obtener el promedio entero y luego su nota en lectura.

Pseudocodigo:

Inicio Caso P

Leer A, B, C Caso 0….Pt = cero

P = (a + b + c)/3 Caso 1….Pt = uno

Pe = P Caso 2….Pt = dos

Escribir Pe …………………..

Fin Caso 19….Pt = diecinueve

Caso 20….Pt = veinte

Fin del caso

17Ing. Daniel Osorio Maldonado

• Una institución del estado va a con trotar personal para que realice un trabajo de computa ; es decir en sistema , para automatizar su proceso, para ello requiere personal que cumpla las siguientes condiciones:

Personal A----hasta 5° de secundaria

Personal B----técnico de computación

Personal C----profesional

Al personal A se le abona un sueldo de 500 soles

Al personal B se le abona un sueldo de 700 soles

Al personal C se le abona un sueldo de 900 soles

Tanto A, B, C cotizan AFP 3.5%, recibe por aginarlo el 12.5%, descuento por impuesto 0.55% y si fuera casado y con hijos abonara 5% para cada hijo.

Personal que no tiene casa se le incrementa 3.75%

¿Cuál es el desembolso que hace la empresa por cada trabajador?

18Ing. Daniel Osorio Maldonado

Pseudocodigo: Inicio P = tipo de personal

Leer P, M, EC, X H = # de hijos Si P = A entonces Ec = estado civil sueldo = (500-(500*3.5%)+(500*2.5%)-(500*0.85%) X = con o sin casa Si = casado entonces Sueldo = sueldo +(500*5%*4) Si x = sin casa entonces Sueldo = sueldo + (500*3.75%) Fin del si Fin del si Fin del si

Si P = B entonces sueldo = 700*5.25% Si Ec = casado entonces Sueldo = sueldo +(700*5%*4) Si x = sin casa entonces Sueldo = sueldo + (700*3.75%) Fin del si Fin del si Fin del si

19Ing. Daniel Osorio Maldonado

Si P = X entonces sueldo = 900*5.25% Si Ec = casado entonces Sueldo = sueldo +(900*5%*4) Si x = sin casa entonces Sueldo = sueldo + (900*3.75%)

Fin del si Fin del si Fin del si

FIN

20Ing. Daniel Osorio Maldonado

Inicio

X

P

A

B

Ec = casado

Ec = casado

X = sin casa

X = sin casa

Sueldo = 500*8.25%

Sueldo = 700* 8.25%

Sueldo +(500*5%*4)

Sueldo +(500*3.75%)

Sueldo +(700*5%*4)

Sueldo +(700*3.75%)

&

V

$

VF

F

V

FV

F

21Ing. Daniel Osorio Maldonado

EC = casado

sueldo

X = sin casa

Sueldo +(900*5%*4)

Fin

Sueldo = 900*8.25%

Sueldo +(900*37.5%)

C

&$

F

V

F

V

22Ing. Daniel Osorio Maldonado

Desarrollo del examen

•Se tiene 4 # y se pide hallar el menor valor y el promedio eliminándose esta menor:

P =(A + B + C + D - menor)/3 Inicio Leer A ,B, C, D A = menor Si B < menor entonces B = menor Sino Si C < menor entonces C = menor Sino Si D < menor entonces D = menor Fin del si Fin del si Fin del si Hallar p Aplicar la formula p = (A + B + C + D - menor)/3 Escribir p Fin

23Ing. Daniel Osorio Maldonado

Inicio

A, B, C, D

A = m

B = m

C = m

D = m

B = m

C = m

D = m

P = (A + B + C + D – m) / 3

P

Fin

V

V

V

F

F

F

24Ing. Daniel Osorio Maldonado

Se pide desarrollar un algoritmo para un trabajador que labora 40 horas a la semana es decir de lunes a viernes a razón de 8 horas diarias y un pago de 15 soles por hora.Cuando el trabajador realiza horas extras se le paga el 50%mas de la tarifa normal. tn = tarifa nomal he = horas extras sb = sueldo bruto ht = horas trabajadas Seudo código Inicio leer ht Si ( ht <= 40 ) entonces sb =ht * 15 Sino he = ht – 40 sb = 15 * 40 + + he ( 1.5 * 15 + 15 ) Fin del si Fin

25Ing. Daniel Osorio Maldonado

Fin

Inicio

Ht

Ht < = 40

He = Ht – 40Sb = 15*40+ He (0.5*15+15)

Sb = 15*40

Sb

F V

26Ing. Daniel Osorio Maldonado

• Decir si dos números son divisibles.Condiciones:1. Un numero es mayor que otro2. Los dos números son enterosDecir que sucede cuando : numero1 = 0 numero2 = 0 numero1 > numero2 numero2 > numero1

Inicio leer A,B A > B Si residuo (A/B) = 0 entonces Mensaje = si es divisible Fin del si Si B = 0 entonces Mensaje = ni existe Fin del si Si A = 0 entonces Mensaje = si es divisible Fin del si Sino Mensaje = no es divisible Escribir mensaje Fin

27Ing. Daniel Osorio Maldonado

Inicio

A,B

A > B

Residuo A/BA => 0

Si es divisible

FV

No es divisible

F V

Si es divisible

B = 0

No existe

V

F

V

Mensaje

FIN

28Ing. Daniel Osorio Maldonado

Instrucciones de control repetitivas

1/3 + 2/3 + 1 + 4/3 + 5/3 + 2 + ...Hallar “N” Inicio Leer N A = 0 B = 0 Mientras ( A <= N ) entonces A = A + 1 B = B + A/3 Fin del mientras Escribir B Fin

29Ing. Daniel Osorio Maldonado

Inicio

A = 0B = 0

B

A <= N

A = A + 1

B = B + A/3

Escribir B

FIN

V

F

30Ing. Daniel Osorio Maldonado

•0 + 2/3 + 4/5 + 6/7 + 8/9 + ...Hallar “N” Inicio Leer N A = 0 B = 0 Par = 0 Impar = 1 Mientras ( A <= N ) entonces B = B + par / impar par = par + 2 Impar = impar + 2 A = A + 1 Fin del mientras Escribir B Fin

31Ing. Daniel Osorio Maldonado

Inicio

A = 0 par = 0 B = 0 impar = 1

N

A <= N

Escribir B

FIN

B = B + par/impar

Par = par + 2Impar = impar + 2

V

F

32Ing. Daniel Osorio Maldonado

• 1 + 2+ 3 + 4 + 5 + 6 + 7 +...+100

Inicio

Leer N Su = 0 Desde/para ( i = 1 hasta N ) hacer Su = su + i Fin desde/para Escribir su Fin

33Ing. Daniel Osorio Maldonado

Inicio

N

Su = 0

Para i = 1 hasta N

Su = su + i

Su

FIN

34Ing. Daniel Osorio Maldonado

•Pasar cualquier numero de base 10 a la base que desees

Inicio Leer N Inverso = 0 Digito = resto ( N/10 ) Inversa = inverso + digito N = entero ( N/10 ) Mientras ( N > 0 ) Escribir inversos Fin

35Ing. Daniel Osorio Maldonado

Inicio

N

Inverso = 0

Digito = resto ( N / 10 )

Inverso = inverso *10 + digito

N = entero ( N / 10 )

N > 0

Inverso

FIN

36Ing. Daniel Osorio Maldonado

•Resolver usando ( desde/para ) y }( mientras ), el ejercicio anterior

Inicio Leer N Inverso = 0 Desde / para ( N /10 hasta entero ( N / 10) > 0 ) Digito = resta ( N / 10 ) Inverso = inverso + digito Fin desde / para Escribir digito Fin

37Ing. Daniel Osorio Maldonado

Inicio

N

Inversa = 0

Desde N / 10 hasta entero (N/10)>0

Digito = resto (N/10)

Inversa = inversa + digito

Digito

FIN

38Ing. Daniel Osorio Maldonado