Pseudocòdigo For

37
1.- A través de un pseudocódigo y un dfd queremos hacer la siguiente encuesta. Para N personas indicadas por el usuario pregunte: — Tienen televisión o no la tienen. Contar los que la tienen y los que no la tienen. — Es en color o no es en color. Contarlos. — Piensan comprarla o no. Contarlos. — Hallar los tantos por ciento de TODO. Entrada:Personas que digan si tienen o no TV, si es a color o no, y en caso contrario, si planean comprar una. Salida:Porcentajes de cada una de las categorias acerca de la encuesta. Restricciones:No hay restricciones. 1)INICIO 2)Entero:i,VF,tele_si=0,tele_no=0,color_si=0,color_no=0,comprar_si =0,comprar_no=0,por_ts,por_tn,por_cs,por_cn,por_cols,por_coln Caracter:resp 3)Escriba "Este algoritmo cuantifica la relación entre la TV y los usuarios." 4)Escriba "¿Cuántos usuarios van a realizar la encuesta?" 5)Lea VF 6)PARA i=1 hasta i<=VF increm=1 7)Escriba "¿Usted tiene televisión en su casa? S.- Sí N.- No" 8)Lea resp

description

Compilado en C.

Transcript of Pseudocòdigo For

Page 1: Pseudocòdigo For

1.- A través de un pseudocódigo y un dfd queremos hacer la siguiente encuesta.

Para N personas indicadas por el usuario pregunte:

— Tienen televisión o no la tienen. Contar los que la tienen y los que no la tienen.

— Es en color o no es en color. Contarlos.

— Piensan comprarla o no. Contarlos.

— Hallar los tantos por ciento de TODO.

Entrada:Personas que digan si tienen o no TV, si es a color o no, y en caso contrario, si planean comprar una.

Salida:Porcentajes de cada una de las categorias acerca de la encuesta.

Restricciones:No hay restricciones.

1)INICIO

2)Entero:i,VF,tele_si=0,tele_no=0,color_si=0,color_no=0,comprar_si=0,comprar_no=0,por_ts,por_tn,por_cs,por_cn,por_cols,por_coln

Caracter:resp

3)Escriba "Este algoritmo cuantifica la relación entre la TV y los usuarios."

4)Escriba "¿Cuántos usuarios van a realizar la encuesta?"

5)Lea VF

6)PARA i=1 hasta i<=VF increm=1

7)Escriba "¿Usted tiene televisión en su casa?

S.- Sí

N.- No"

8)Lea resp

9)SI resp=s o resp=S

10)tele_si=tele_si+1

11)Escriba "¿Es a color o no?

S.-Sí

N.-No"

Page 2: Pseudocòdigo For

12)Lea resp

13)Si resp=s o resp=S

14)color_si=color_si+1

15)En caso contrario

16)color_no=color_no+1

17)FIN de SI

18)En caso contrario

19)tele_no=tele_no+1

20)Escriba "¿Planea comprar una?

S.-Sí

N.-No"

21)Lea resp

22)SI resp=s o resp=S

23)comprar_si=comprar_si+1

24)En caso contrario

25)comprar_no=comprar_no+1

26)FIN de SI

27)FIN de SI

28)Escriba "Gracias por responder la encuesta"

29)FIN de PARA

30)por_ts=(tele_si*100)/VF

31)por_tn=(tele_no*100)/VF

32)por_cs=(comprar_si*100)/VF

33)por_cn=(comprar_no*100)/VF

34)por_cols=(color_si*100)/VF

35)por_coln=(color_no*100)/VF

36)Escriba "Los resultados (En porcentajes) de la encuesta fueron:

Tienen TV:",por_ts,

"No tienen TV:",por_tn,

Page 3: Pseudocòdigo For

"Su TV es a color:",por_cols,

"Su TV no es a color:",por_coln,

"Planean comprar TV:",por_cs,

"No planean comprar TV:",por_cn

37)FIN

Page 4: Pseudocòdigo For
Page 5: Pseudocòdigo For
Page 6: Pseudocòdigo For

2. En una empresa, se darán aumentos a 500 empleados según la categoría de su

contrato actual de la siguiente forma:

Clave de categoría Categoría Aumento %

S -- Sindicalizado -- 20

C -- Confianza -- 10

D -- Directivo -- 5

E -- Ejecutivo -- 0

Elabore un pseudocódigo y un diagrama de flujo de datos que soliciten la clave de la

categoría, el sueldo actual de cada empleado y calcule e imprima el nuevo salario. Para la

resolución de este problema use un seleccionador de casos.

Entrada:Categoria y sueldo de cada empleado.

Salida:Nuevo salario.

Restricciones:Solo existen cuatro categorias y no hay salarios negativos.

1)INICIO

2)Entero:sal_s,sal_c,sal_d,sal

Caracter:opcion

3)Escriba "Este algoritmo le dice a sus empleados su nuevo salario dependiendo de su categoría"

4)PARA i=1 hasta i<=500 increm=1

5)Escriba "Seleccione su categoria de acuerdo a nuestro menú de opciones:

S.-Sindicalizado

C.-Confianza

D.-Directivo

E.-Ejecutivo"

6)Lea opcion

Page 7: Pseudocòdigo For

7)SELECCIONAR opcion

8)caso'S':caso's'

9)Escriba "Usted indicó ser Sindicalizado"

10)Escriba "¿Cuál es su salario?"

11)Lea sal

12)SI sal<=0

13)Escriba "ERROR"

14)i=i-1

15)En caso contrario

16)sal_s=sal+(sal*0.2)

17)Escriba "Su nuevo salario es:",sal_s

18)caso'C':caso'c'

19)Escriba "Usted indicó ser Confianza"

20)Escriba "¿Cuál es su salario?"

21)Lea sal

22)SI sal<=0

23)Escriba "ERROR"

24)i=i-1

25)En caso contrario

26)sal_c=sal+(sal*0.1)

27)Escriba "Su nuevo salario es:",sal_c

28)caso'D':caso'd'

29)Escriba "Usted indicó ser Directivo"

30)Escriba "¿Cuál es su salario?"

31)Lea sal

32)SI sal<=0

33)Escriba "ERROR"

34)i=i-1

35)En caso contrario

Page 8: Pseudocòdigo For

36)sal_d=sal+(sal*0.05)

37)Escriba "Su nuevo salario es:",sal_d

38)caso'E':caso'e'

39)Escriba "Usted indicó ser Ejecutivo"

40)Escriba "Su salario no muestra ningún aumento"

41)En otro caso

42)Escriba "Usted no indicó una opción válida, intentelo de nuevo"

43)i=i-1

44)FIN de SELECCIONADOR

45)FIN PARA

46)FIN

Page 9: Pseudocòdigo For
Page 10: Pseudocòdigo For
Page 11: Pseudocòdigo For

3.- Un vendedor ha hecho una serie de ventas y al final del día desea conocer aquellas de

$200 o menos, las mayores a $200 pero inferiores a $400 y el número de ventas de $400 o

superiores a tal cantidad. Diseñe pseudocódigo y un diagrama de flujo que soliciten el

número total de ventas, el monto de cada una de ellas y responda al vendedor lo que

desea saber.

Entrada: Ventas

Salida: Numero de ventas en categorias

Restricciones: No hay ventas negativas

1)INICIO

2)Entero:venta,dosc=0,cuat=0,may=0

Caracter:resp

3)Escriba "Este algoritmo divide las ventas en 3 categorias diferentes y dice cuantos fueron de cada una"

4)Escriba "¿Cuántas ventas va a ingresar?"

5)Lea resp

6)PARA i=1 hasta i<=resp increm=1

7)Escriba "Ingrese el monto de su venta"

8)Lea venta

9)SI venta<=0

10)Escriba "Venta inválida"

11)En caso contrario

12)SI venta<200

13)dosc=dosc+1

14)En caso contrario

15)SI venta>200 o venta<400

16)cuat=cuat+1

17)En caso contrario

Page 12: Pseudocòdigo For

18)may=may+1

19)FIN de SI

20)FIN de SI

21)FIN de SI

22)FIN PARA

23)Escriba "Las ventas del día fueron:

-Menores a $200:",dosc,

"-Mayores a $200 pero menores a $400:",cuat,

"-Iguales a $400 o mayores:",may

24)FIN

Page 13: Pseudocòdigo For
Page 14: Pseudocòdigo For

4.- Hacer un pseudocódigo y un dfd que digan al usuario cuál es su signo del zodiaco.

Considere la siguiente tabla y que el usuario ingresa 2 números enteros correspondientes

al día y mes de nacimiento.

SIGNO FECHAS

Aries Del 21 de marzo al 19 de abril.

Tauro Del 20 de abril al 20 de mayo.

Géminis Del 21 de mayo al 21 de junio.

Cáncer Del 22 de junio al 22 de julio.

Leo Del 23 de julio al 22 de agosto.

Virgo Del 23 de agosto al 21 de septiembre.

Libra Del 22 de septiembre al 22 de octubre.

Escorpión Del 23 de octubre al 21 de noviembre.

Sagitario Del 22 de noviembre al 21 de diciembre.

Capricornio Del 22 de diciembre al 19 de enero.

Acuario Del 20 de enero al 19 de febrero.

Piscis Del 20 de febrero al 20 de marzo.

Entrada:Fecha de nacimiento en números enteros.

Salida: Signo del zodiaco.

Restricciones: No hay más de 12 meses ni de 31 días del mes.

1)INICIO

2)Entero:mes,dia

3)Escriba "Este algoritmo da un signo del zodiaco basandose en la fecha de nacimiento"

4)Escriba "Ingresa el numero de tu mes de nacimiento a dos digitos"

5)Lea mes

6)SELECCIONAR mes

Page 15: Pseudocòdigo For

7)caso'01'

8)Escriba "Ingrese el día en que nació (a dos cifras)"

9)Lea dia

10)SI dia<=0

11)Escriba "Error"

12)En caso contrario

13)SI dia<=19

14)Escriba "Capricornio"

15)En caso contrario

16)SI dia<=31

17)Escriba "Acuario"

18)En caso contrario

19)"Error"

20)FIN de SI

21)FIN de SI

22)FIN de SI

23)caso'02'

24)Escriba "Ingrese el día en que nació (a dos cifras)"

25)Lea dia

26)SI dia<=0

27)Escriba "Error"

28)En caso contrario

29)SI dia<=19

30)Escriba "Acuario"

31)En caso contrario

32)SI dia<=28

33)Escriba "Piscis"

34)En caso contrario

35)"Error"

Page 16: Pseudocòdigo For

36)FIN de SI

37)FIN de SI

38)FIN de SI

39)caso'03'

40)Escriba "Ingrese el día en que nació (a dos cifras)"

41)Lea dia

42)SI dia<=0

43)Escriba "Error"

44)En caso contrario

45)SI dia<=20

46)Escriba "Piscis"

47)En caso contrario

48)SI dia<=31

49)Escriba "Aries"

50)En caso contrario

51)"Error"

52)FIN de SI

53)FIN de SI

54)FIN de SI

55)caso'04'

56)Escriba "Ingrese el día en que nació (a dos cifras)"

57)Lea dia

58)SI dia<=0

59)Escriba "Error"

60)En caso contrario

61)SI dia<=19

62)Escriba "Aries"

63)En caso contrario

64)SI dia<=30

Page 17: Pseudocòdigo For

65)Escriba "Tauro"

66)En caso contrario

67)"Error"

68)FIN de SI

69)FIN de SI

70)FIN de SI

71)caso'05'

72)Escriba "Ingrese el día en que nació (a dos cifras)"

73)Lea dia

74)SI dia<=0

75)Escriba "Error"

76)En caso contrario

77)SI dia<=20

78)Escriba "Tauro"

79)En caso contrario

80)SI dia<=31

81)Escriba "Géminis"

82)En caso contrario

83)"Error"

84)FIN de SI

85)FIN de SI

86)FIN de SI

87)caso'06'

88)Escriba "Ingrese el día en que nació (a dos cifras)"

89)Lea dia

90)SI dia<=0

91)Escriba "Error"

92)En caso contrario

93)SI dia<=21

Page 18: Pseudocòdigo For

94)Escriba "Géminis"

95)En caso contrario

96)SI dia<=30

97)Escriba "Cáncer"

98)En caso contrario

99)"Error"

100)FIN de SI

101)FIN de SI

102)FIN de SI

103)caso'07'

104)Escriba "Ingrese el día en que nació (a dos cifras)"

105)Lea dia

106)SI dia<=0

107)Escriba "Error"

108)En caso contrario

109)SI dia<=22

110)Escriba "Cáncer"

111)En caso contrario

112)SI dia<=31

113)Escriba "Leo"

114)En caso contrario

115)"Error"

116)FIN de SI

117)FIN de SI

118)FIN de SI

119)caso'08'

120)Escriba "Ingrese el día en que nació (a dos cifras)"

121)Lea dia

122)SI dia<=0

Page 19: Pseudocòdigo For

123)Escriba "Error"

124)En caso contrario

125)SI dia<=22

126)Escriba "Leo"

127)En caso contrario

128)SI dia<=31

129)Escriba "Virgo"

130)En caso contrario

131)"Error"

132)FIN de SI

133)FIN de SI

134)FIN de SI

135)caso'09'

136)Escriba "Ingrese el día en que nació (a dos cifras)"

137)Lea dia

138)SI dia<=0

139)Escriba "Error"

140)En caso contrario

141)SI dia<=21

142)Escriba "Virgo"

143)En caso contrario

144)SI dia<=30

145)Escriba "Libra"

146)En caso contrario

147)"Error"

148)FIN de SI

149)FIN de SI

150)FIN de SI

151)caso'10'

Page 20: Pseudocòdigo For

152)Escriba "Ingrese el día en que nació (a dos cifras)"

153)Lea dia

154)SI dia<=0

155)Escriba "Error"

156)En caso contrario

157)SI dia<=22

158)Escriba "Libra"

159)En caso contrario

160)SI dia<=31

161)Escriba "Escorpión"

162)En caso contrario

163)"Error"

164)FIN de SI

165)FIN de SI

166)FIN de SI

167)caso'11'

168)Escriba "Ingrese el día en que nació (a dos cifras)"

169)Lea dia

170)SI dia<=0

171)Escriba "Error"

172)En caso contrario

173)SI dia<=21

174)Escriba "Escorpión"

175)En caso contrario

176)SI dia<=30

177)Escriba "Sagitario"

178)En caso contrario

179)"Error"

180)FIN de SI

Page 21: Pseudocòdigo For

181)FIN de SI

182)FIN de SI

183)caso'12'

184)Escriba "Ingrese el día en que nació (a dos cifras)"

185)Lea dia

186)SI dia<=0

187)Escriba "Error"

188)En caso contrario

189)SI dia<=21

190)Escriba "Sagitario"

191)En caso contrario

192)SI dia<=31

193)Escriba "Capricornio"

194)En caso contrario

195)"Error"

196)FIN de SI

197)FIN de SI

198)FIN de SI

199)En otro caso

200)Escriba "Mes inválido"

201)FIN SELECCIONAR

202)FIN.

Page 22: Pseudocòdigo For
Page 23: Pseudocòdigo For
Page 24: Pseudocòdigo For
Page 25: Pseudocòdigo For
Page 26: Pseudocòdigo For

5.- En una guardería hay 25 niños de 1, 2 y 3 años. Los niños de 1 año consumen 6

pañales al día, los niños de 2 años consumen 3 pañales diarios y los niños de 3 años

consumen 2 pañales diarios. Se desea conocer el consumo total de pañales diarios y el

consumo de total de pañales en la semana.

Datos: edad1

edad2

. . . . .

edad25

donde edadi representa la edad del i–ésimo niño en años cumplidos (1, 2 ó 3).

Presente un pseudocódigo y un dfd que pidan la edad de cada uno de los 25 niños y

devuelva la cantidad de pañales que se consumirán por día y por semana.

Entrada: Edades de los niños.

Salida: Pañales consimidos por día y semana.

Restricciones: Solo hay edades de 1, 2 y 3 años.

1)INICIO

2)Entero:i,edad,pañal,sem

3)Escriba "Este algoritmo dice cuantos pañales se consumen al día y a la semana, con solo las edades de los niños"

4)PARA i=1 hasta i<=25 increm=1

5)Escriba "¿Qué edad tiene el niño?"

6)Lea edad

7)SI edad=1

8)pañal=pañal+6

9)En caso contrario

10)SI edad=2

Page 27: Pseudocòdigo For

11)pañal=pañal+3

12)En caso contrario

13)SI edad=3

14)pañal=pañal+2

15)En caso contrario

16)Escriba "Edad no válida"

17)i=i-1

18)FIN de SI

19)FIN de SI

20)FIN de SI

21)FIN de PARA

22)sem=pañal*7

23)Escriba "El consumo de pañales por día es:",pañal,"a este ritmo, el consumo de la semana sería:",sem

24)FIN

Page 28: Pseudocòdigo For
Page 29: Pseudocòdigo For

6.- Una compañía dedicada al alquiler de automóviles cobra un monto fijo de $30 para los

primeros 300 km de recorrido. Para más de 300 km y hasta 1000 km, cobra un monto

adicional de $ 0.15 por cada kilómetro en exceso sobre 300. Para más de 1000 km cobra

un monto adicional de $ 0.10 por cada kilómetro en exceso sobre 1000. Los precios ya

incluyen el 14% del IVA. Diseñe un algoritmo que determine el monto a pagar por el

alquiler de un vehículo y el monto incluido del impuesto.

Entrada: Kilometros recorridos

Salida: Monto desglosado en IVA y alquiler

Restricciones:No hay kilometros negativos

1)INICIO

2)Entero:km,total,alq,iva

3)Escriba "Este algoritmo dice el total del alquiler del auto de acuerdo a los km que recorrió"

4)Escriba "¿Cuántos km movió el auto?"

5)Lea km

6)SI km<=0

7)Escriba "N° de km inválidos"

8)En caso contrario

9)SI km<=300

10)total=30

11)En caso contrario

12)SI km>300 o km<=1000

13)total=30+(km-300)*0.15

14)En caso contrario

15)total=135+(km-1000)*0.1

16)FIN de SI

17)FIN de SI

Page 30: Pseudocòdigo For

18)FIN de SI

19)iva=total*0.14

20)alq=total-iva

21)Escriba "Lo que debe pagar en total es:",total,"dividido en:

-IVA:",iva,

"-ALQUILER:",alq

22)FIN

Page 31: Pseudocòdigo For
Page 32: Pseudocòdigo For

7.- Una empresa tiene n empleados, por los que aporta al INFONAVIT el 3% de la nómina

y al IMSS el 4%. Donde los datos son:

n, s1, s2,..., sn

Donde:

n representa el número de empleados

si representa el sueldo del empleado i

Elabore un pseudocódigo y un diagrama de flujo que calcule e imprima:

a. El sueldo-empresa de cada empleado que consiste en el sueldo del

Empleado más las aportaciones mencionadas.

b. El monto total de la nómina que paga la empresa.

c. El total de aportaciones al INFONAVIT y al IMSS que realiza la

empresa.

Entrada: Salario de empleados

Salida: Salario total de nómina, y aportaciones al IMSS e INFONAVIT

Restricciones: No hay salarios negativos.

1)INICIO

2)Entero:i,imss,info,total,salar,VF

3)Escriba "Este algoritmo da el salario total, el monto de las aportaciones al IMSS e INFONAVIT"

4)Escriba "¿Cuántos empleados van a realizar la encuesta?"

5)Lea VF

6)PARA i=1 hasta i<=VF increm=1

7)Escriba "Ingrese el monto de su salario de nomina"

8)Lea salar

9)SI salar<=0

Page 33: Pseudocòdigo For

10)Escriba "ERROR"

11)i=i-1

12)En caso contrario

13)total=(salar*100)/93

14)imss=(total*0.04)

15)info=(total*0.03)

16)Escriba "Su salario se compone de:

-IMSS:",imss,

"-INFONAVIT",info,

"-TOTAL(Sueldo Empresa):",total

17)FIN de SI

18)FIN PARA

19)FIN