Ejer-C04 - WordPress.com

Anuncio
Capítulo 4
4.7 Ejercicios resueltos (Continuación…)
Ejercicio 4.7.6
Elaborar un algoritmo que lea el tamaño de un ángulo en grados e imprimir si es:
Agudo
Recto
Obtuso
Llano
Concavo
si es menor a 90°
si es igual a 90°
si es mayor que 90° pero menor que 180°
si es igual a 180°
si es mayor que 180° pero menor que 360°
Utilizar IF-THEN.
(Primero hágalo usted...después compare la solución)
Algoritmo TIPO ANGULO
Clase TipoAngulo1
1. Método principal
a. Declaraciones
Variables
angulo: Real
b. Solicitar Angulo
c. Leer angulo
d. IF angulo < 90 THEN
1. Imprimir “Agudo”
e. ENDIF
f. IF angulo = 90 THEN
1. Imprimir “Recto”
g. ENDIF
h. IF (angulo>90)AND(angulo<180) THEN
1. Imprimir “Obtuso”
4-2 Metodología de la Programación Orientada a Objetos
i. ENDIF
j. IF angulo = 180 THEN
1. Imprimir “Llano”
k. ENDIF
l. IF (angulo>180)AND(angulo<360) THEN
1. Imprimir “Concavo”
m. ENDIF
n. Fin Método principal
Fin Clase TipoAngulo1
Fin
Explicación:
En el Método principal de la Clase TipoAngulo1, se tienen las acciones:
a.
b.
c.
d.
Se Declara la variable angulo
Se solicita el tamaño del Angulo
Se lee el dato en angulo
Se compara si angulo < 90 si se cumple, entonces
a. Se imprime que el ángulo es “Agudo”
e. Fin del IF
f. Se compara si angulo = 90 si se cumple, entonces
a. Se imprime que el ángulo es “Recto”
g. Fin del IF
h. Se compara si (angulo>90)y(angulo<180) si se cumple, entonces
a. Se imprime que el ángulo es “Obtuso”
i. Fin del IF
j. Se compara si angulo = 180 si se cumple, entonces
a. Se imprime que el ángulo es “Llano”
k. Fin del IF
l. Se compara si (angulo>180)AND(angulo<360) si se cumple, entonces
a. Se imprime que el ángulo es “Concavo”
m. Fin del IF
n. Fin del método principal
Luego se tiene el fin de la clase y el fin del algoritmo.
Ejercicio 4.7.7
Elaborar un algoritmo que permita leer el tamaño de dos ángulos A y B; e imprima:
- si son iguales y que tipo de ángulo son
- si son diferentes y que tipo de ángulo es cada uno
Utilizar IF-THEN-ELSE e IF-THEN.
(Primero hágalo usted...después compare la solución)
Ejercicios resueltos (Continuación...) 4-3
Algoritmo ANGULOS IGUALES O DIFERENTES
Clase AngulosIgualesDife
1. Método principal
a. Declaraciones
Variables
anguloA, anguloB: Real
b. Solicitar AnguloA y AnguloB
c. Leer anguloA, anguloB
d. IF anguloA = anguloB THEN
1. Imprimir “LOS ANGULOS SON IGUALES”
2. IF anguloA < 90 THEN
a. Imprimir “SON AGUDOS”
3. ENDIF
4. IF anguloA = 90 THEN
a. Imprimir “SON RECTOS”
5. ENDIF
6. IF (anguloA>90)AND(anguloA<180) THEN
a. Imprimir “SON OBTUSOS”
7. ENDIF
8. IF anguloA = 180 THEN
a. Imprimir “SON LLANOS”
9. ENDIF
10. IF (anguloA>180)AND(anguloA<360) THEN
a. Imprimir “SON CONCAVOS”
11. ENDIF
e. ELSE
1. Imprimir “LOS ANGULOS SON DIFERENTES”
2. IF anguloA < 90 THEN
a. Imprimir “EL ANGULO A ES AGUDO”
3. ENDIF
4. IF anguloA = 90 THEN
a. Imprimir “EL ANGULO A ES RECTO”
5. ENDIF
6. IF (anguloA>90)AND(anguloA<180) THEN
a. Imprimir “EL ANGULO A ES OBTUSO”
7. ENDIF
8. IF anguloA = 180 THEN
a. Imprimir “EL ANGULO A ES LLANO”
9. ENDIF
10. IF (anguloA>180)AND(anguloA<360) THEN
a. Imprimir “EL ANGULO A ES CONCAVO”
11. ENDIF
12. IF anguloB < 90 THEN
a. Imprimir “EL ANGULO B ES AGUDO”
13. ENDIF
14. IF anguloB = 90 THEN
a. Imprimir “EL ANGULO B ES RECTO”
4-4 Metodología de la Programación Orientada a Objetos
15. ENDIF
16. IF (anguloB>90)AND(anguloB<180) THEN
a. Imprimir “EL ANGULO B ES OBTUSO”
17. ENDIF
18. IF anguloB = 180 THEN
a. Imprimir “EL ANGULO B ES LLANO”
19. ENDIF
20. IF (anguloB>180)AND(anguloB<360) THEN
a. Imprimir “EL ANGULO B ES CONCAVO”
21. ENDIF
f. ENDIF
g. Fin Método principal
Fin Clase AngulosIgualesDife
Fin
Explicación:
En el Método principal de la Clase AngulosIgualesDife, se tienen las acciones:
a.
b.
c.
d.
Se declaran las variables anguloA y anguloB
Se solicitan los datos anguloA y anguloB
Se leen los datos en anguloA y anguloB
Se compara si anguloA = anguloB si se cumple, entonces
1. Se imprime que los ángulos “SON IGUALES”
2. Se compara si anguloA < 90 si se cumple, entonces
a. Se imprime que “SON AGUDOS”
3. Fin del IF
4. Se compara si anguloA = 90 si se cumple, entonces
a. Se imprime que “SON RECTOS”
5. Fin del IF
6. Se compara si (anguloA>90)AND(anguloA<180) si se cumple, entonces
a. Se imprime que “SON OBTUSOS”
7. Fin del IF
8. Se compara si anguloA = 180 si se cumple, entonces
a. Se imprime que “SON LLANOS”
9. Fin del IF
10. Se compara si (anguloA>180)AND(anguloA<360) si se cumple, entonces
a. Se imprime que “SON CONCAVOS”
11. Fin del IF
e. Si no se cumple (ELSE)
1. Se imprime que los ángulos “SON DIFERENTES”
2. Se compara si anguloA < 90 si se cumple, entonces
a. Se imprime que “EL ANGULO A ES AGUDO”
3. Fin del IF
4. Se compara si anguloA = 90 si se cumple, entonces
a. Se imprime que “EL ANGULO A ES RECTO”
5. Fin del IF
Ejercicios resueltos (Continuación...) 4-5
6. Se compara si (anguloA>90)AND(anguloA<180) si se cumple, entonces
a. Se imprime que “EL ANGULO A ES OBTUSO”
7. Fin del IF
8. Se compara si anguloA = 180 si se cumple, entonces
a. Se imprime que “EL ANGULO A ES LLANO”
9. Fin del IF
10. Se compara si (anguloA>180)AND(anguloA<360) si se cumple, entonces
a. Se imprime que “EL ANGULO A ES CONCAVO”
11. Fin del IF
12. Se compara si anguloB < 90 si se cumple, entonces
a. Se imprime que “EL ANGULO B ES AGUDO”
13. Fin del IF
14. Se compara si anguloB = 90 si se cumple, entonces
a. Se imprime que “EL ANGULO B ES RECTO”
15. Fin del IF
16. Se compara si (anguloB>90)AND(anguloB<180) si se cumple, entonces
a. Se imprime que “EL ANGULO B ES OBTUSO”
17. Fin del IF
18. Se compara si anguloB = 180 si se cumple, entonces
a. Se imprime que “EL ANGULO B ES LLANO”
19. Fin del IF
20. Se compara si (anguloB>180)AND(anguloB<360) si se cumple, entonces
a. Se imprime que “EL ANGULO B ES CONCAVO”
21. Fin del IF
f. Fin del IF
g. Fin del método principal
Luego se tiene el fin de la clase y el fin del algoritmo.
Ejercicio 4.7.8
Elaborar un algoritmo que permita leer el tamaño de un ángulo en radianes o en grados
(debe preguntar en que lo va a leer); e imprima su equivalencia (en grados o radianes
según corresponda), el seno y el coseno. Utilizar IF-THEN-ELSE.
(Primero hágalo usted...después compare la solución)
Algoritmo SENO COSENO ARCO TANGENTE DE ANGULO
Clase Angulo4
1. Método principal
a. Declaraciones
Constantes
PI = 3.145926536
Variables
angulo, senAng, cosAng,
angRadianes, angGrados: Real
4-6 Metodología de la Programación Orientada a Objetos
resp: Carácter
b. Imprimir “¿EN QUE TIENE EL TAMAÑO DEL ANGULO? “
“¿GRADOS(G), RADIANES(R)?: “
c. Leer resp
d. Solicitar ANGULO
e. Leer angulo
f. IF resp = “G” THEN
1. angRadianes = angulo * (PI/180)
2. Imprimir “EQUIVALEN A”, angRadianes, “ RADIANES”
3. senAng = Seno(angRadianes)
4. cosAng = Coseno(angRadianes)
g. ELSE
1. angGrados = angulo * (180 / PI)
2. Imprimir “EQUIVALEN A”, angGrados, “ GRADOS”
3. senAng = Seno(angulo)
4. cosAng = Coseno(angulo)
h. ENDIF
i. Imprimir “SENO = “, senAng
j. Imprimir “COSENO = “, cosAng
k. Fin Método principal
Fin Clase Angulo4
Fin
Explicación:
En el Método principal de la Clase Angulo4, se tienen las acciones:
a. Se declaran constante y variables
b. Se pregunta “¿EN QUE TIENE EL TAMAÑO DEL ANGULO? “
“¿GRADOS(G), RADIANES(R)?: “
Sugiere que teclee G si lo tiene en grados o R si lo tiene en radianes.
c. Se lee en resp
d. Se solicita el tamaño del ángulo
e. Se lee en angulo
f. Se compara si resp = “G” si se cumple, entonces
1. Calcula la equivalencia del angulo en radianes
2. Se imprime a cuántos radianes equivale el ángulo
3. Se calcula el seno
4. Se calcula el coseno
g. Si no se cumple (ELSE)
1. Se calcula la equivalencia angulo en grados
2. Se imprime el tamaño del ángulo en grados
3. Se calcula el seno
4. Se calcula el coseno
h. Fin del IF
i. Se imprime el seno
j. Se imprime el coseno
Ejercicios resueltos (Continuación...) 4-7
k. Fin del método principal
Luego se tiene el fin de la clase y el fin del algoritmo.
Ejercicio 4.7.9
Elabore un algoritmo que permita hacer conversiones de equivalencias de metros, yardas,
pies y pulgadas. Primero debe preguntar que desea convertir y debe indicar una de las
medidas mencionadas. Por ejemplo; si escogió metros, debe solicitar y leer el número
de metros a convertir, enseguida imprimir la equivalencia en pies, yardas y pulgadas,
y asi, hará lo propio para cada una de las medidas indicadas. Equivalencias: 1 pie = 12
pulgadas, 1 yarda = 3 pies, 1 pulgada = 2.54 cm, 1 metro = 100 cm. Utilizar IF-THEN.
(Primero hágalo usted...después compare la solución)
Algoritmo EQUIVALENCIAS YARDAS PIES PULGADAS METROS
Clase EquivalenciasPies
1. Método principal
a. Declaraciones
Variables
metros, yardas, pies, pulgadas: Real
resp: Carácter
b. Imprimir “¿QUÉ DESEA CONVERTIR? “
“¿METROS(M), YARDAS(Y), PIES(P), PULGADAS(U)?: “
c. Leer resp
d. IF resp = “M” THEN
1. Solicitar NUMERO DE METROS
2. Leer metros
3. pulgadas = (metros * 100) / 2.54
4. pies = pulgadas / 12
5. yardas = pies / 3
6. Imprimir metros, “METROS EQUIVALEN A: “
7. Imprimir pulgadas, “PULGADAS”
8. Imprimir pies, “PIES”
9. Imprimir yardas, “YARDAS”
e. ENDIF
f. IF resp = “Y” THEN
1. Solicitar NUMERO DE YARDAS
2. Leer yardas
3. pies = yardas * 3
4. pulgadas = pies * 12
5. metros = (pulgadas * 2.54 ) / 100
6. Imprimir yardas, “YARDAS EQUIVALEN A: “
7. Imprimir pulgadas, “PULGADAS”
8. Imprimir pies, “PIES”
9. Imprimir metros, “METROS”
4-8 Metodología de la Programación Orientada a Objetos
g. ENDIF
h. IF resp = “P” THEN
1. Solicitar NUMERO DE PIES
2. Leer pies
3. pulgadas = pies * 12
4. yardas = pies / 3
5. metros = (pulgadas * 2.54 ) / 100
6. Imprimir pies, “PIES EQUIVALEN A: “
7. Imprimir pulgadas, “PULGADAS”
8. Imprimir yardas, “YARDAS”
9. Imprimir metros, “METROS”
i. ENDIF
j. IF resp = “U” THEN
1. Solicitar NUMERO DE PULGADAS
2. Leer pulgadas
3. pies = pulgadas / 12
4. yardas = pies / 3
5. metros = (pulgadas * 2.54 ) / 100
6. Imprimir pulgadas, “PULGADAS EQUIVALEN A: “
7. Imprimir pies, “PIES”
8. Imprimir yardas, “YARDAS”
9. Imprimir metros, “METROS”
k. ENDIF
l. Fin Método principal
Fin Clase EquivalenciasPies
Fin
Explicación:
En el Método principal de la Clase EquivalenciasPies, se tienen las acciones:
a. Se declaran las variables
b. Se pregunta “¿QUÉ DESEA CONVERTIR? “
“¿METROS(M), YARDAS(Y), PIES(P), PULGADAS(U) ?: “
c. Se lee en resp
d. Si acaso resp = “M” si se cumple, entonces
1. Se solicita NUMERO DE METROS
2. Se lee en metros
3. Se calcula pulgadas
4. Se calcula pies
5. Se calcula yardas
6. Se imprime metros, “METROS EQUIVALEN A: “
7. Se imprime pulgadas, “PULGADAS”
8. Se imprime pies, “PIES”
9. Se imprime yardas, “YARDAS”
e. Fin del IF
f. Si acaso resp = “Y” si se cumple, entonces
Ejercicios resueltos (Continuación...) 4-9
g.
h.
i.
j.
k.
l.
1. Se solicita NUMERO DE YARDAS
2. Se lee en yardas
3. Se calcula pies
4. Se calcula pulgadas
5. Se calcula metros
6. Se imprime yardas, “YARDAS EQUIVALEN A: “
7. Se imprime pulgadas, “PULGADAS”
8. Se imprime pies, “PIES”
9. Se imprime metros, “METROS”
Fin del IF
Si acaso resp = “P” si se cumple, entonces
1. Se solicita NUMERO DE PIES
2. Se lee en pies
3. Se calcula pulgadas
4. Se calcula yardas
5. Se calcula metros
6. Se imprime pies, “PIES EQUIVALEN A: “
7. Se imprime pulgadas, “PULGADAS”
8. Se imprime yardas, “YARDAS”
9. Se imprime metros, “METROS”
Fin del IF
Si acaso resp = “U” si se cumple, entonces
1. Se solicita NUMERO DE PULGADAS
2. Se lee en pulgadas
3. Se calcula pies
4. Se calcula yardas
5. Se calcula metros
6. Se imprime pulgadas, “PULGADAS EQUIVALEN A: “
7. Se imprime pies, “PIES”
8. Se imprime yardas, “YARDAS”
9. Se imprime metros, “METROS”
Fin del IF
Fin del método principal
Luego se tiene el fin de la clase y el fin del algoritmo.
Ejercicio 4.7.10
La ecuación de la segunda ley de Newton:
F = ma
Donde:
F es la fuerza que actúa sobre el objeto (cuerpo), en gramos por centímetro cuadrado.
m es la masa del cuerpo (en gramos).
a es la aceleración en centímetros por segundo cuadrado.
4-10 Metodología de la Programación Orientada a Objetos
y dice; que la fuerza (F) que actúa sobre un cuerpo se obtiene multiplicando la masa por
la aceleración.
Se puede calcular la aceleración (a) si se tienen los datos F y m; con la fórmula:
a=
F
m
Se puede calcular la masa (m) si se tienen los datos fuerza (F) y aceleración (a), con la
fórmula:
m=
F
a
Elaborar un algoritmo que pregunte lo que desea calcular; fuerza (F), masa (m) o
aceleración (a). Si es F, se leen los datos m y a. Si es a, se leen los datos F y m. Si es m, se
leen los datos F y a. Utilizar IF-THEN.
(Primero hágalo usted...después compare la solución)
Algoritmo SEGUNDA LEY NEWTON
Clase LeyNewton1
1. Método principal
a. Declaraciones
Variables
f, a, m: Real
resp: Carácter
b. Imprimir “¿QUÉ DESEA CALCULAR? “
“¿FUERZA(F), ACELERACION(A), MASA(M) ?: “
c. Leer resp
d. IF resp = “F” THEN
1. Solicitar MASA
2. Leer m
3. Solicitar ACELERACION
4. Leer a
5. f = m * a
6. Imprimir “F = “, f
e. ENDIF
f. IF resp = “A” THEN
1. Solicitar MASA
2. Leer m
3. Solicitar FUERZA
4. Leer f
5. a = f / m
6. Imprimir “A = “, a
g. ENDIF
h. IF resp = “M” THEN
Ejercicios resueltos (Continuación...) 4-11
1. Solicitar FUERZA
2. Leer f
3. Solicitar ACELERACION
4. Leer a
5. m = f / a
6. Imprimir “M = “, m
i. ENDIF
j. Fin Método principal
Fin Clase LeyNewton1
Fin
Explicación:
En el Método principal de la Clase LeyNewton1, se tienen las acciones:
a. Se declaran las variables
b. Se pregunta “¿QUÉ DESEA CALCULAR? “
“¿FUERZA(F), ACELERACION(A), MASA(M) ?: “
c. Se lee en resp
d. Si acaso resp = “F” entonces
1. Se solicita MASA
2. Se lee en m
3. Se solicita ACELERACION
4. Se lee en a
5. Se calcula la fuerza
6. Se imprime la fuerza
e. Fin del IF
f. Si acaso resp = “A” entonces
1. Se solicita MASA
2. Se lee en m
3. Se solicita FUERZA
4. Se lee en f
5. Se calcula la aceleración
6. Se imprime la aceleración
g. Fin del IF
h. Si acaso resp = “M” entonces
1. Se solicita FUERZA
2. Se lee en f
3. Se solicita ACELERACION
4. Se lee en a
5. Se calcula la masa
6. Se imprime la masa
i. Fin del IF
j. Fin del método principal
Luego se tiene el fin de la clase y el fin del algoritmo.
4-12 Metodología de la Programación Orientada a Objetos
Ejercicio 4.7.11
Teniendo como datos de entrada valores para los coeficientes a, b, c; y aplicando la
ecuación cuadrática: F(x) = ax²+bx+c
Las raíces se calculan con la fórmula
X=
-b ± b2 − 4ac
2a
Si b²-4ac = 0 tiene raíz única, que se calcula
−b
2a
Si b²-4ac es menor que 0 (cero) tiene raíces complejas que se calculan:
Parte Real ± Parte Imaginaria
Donde:
Parte Real =
−b
2a
Parte Imaginaria =
b2 − 4ac
2a
Por lo que:
Raíz compleja 1 = Parte real + Parte imaginaria
Raíz compleja 2 = Parte real - Parte imaginaria
Si b²-4ac es mayor que 0 (cero) tiene raíces reales, aplicando la ecuación completa se
calculan:
Raíz real 1 =
−2 + b2 − 4ac
2a
Raíz real 2 =
−2 − b2 − 4ac
2a
Elaborar un algoritmo que permita leer los valores de los coeficientes a, b, c; y, que
imprima la raíz única, las raíces complejas o las raíces reales, según corresponda. Utilizar
IF-THEN-ELSE.
(Primero hágalo usted...después compare la solución)
Algoritmo ECUACION CUADRATICA
Clase Cuadratica1
1. Método principal
a. Declaraciones
Variables
Ejercicios resueltos (Continuación...) 4-13
a, b, c, raizUnica, parteReal, parteImaginaria,
raizReal1, raizReal2: Real
b. Solicitar COEFICIENTES A, B, C
c. Leer a, b, c
d. IF (Potencia(b,2)-4*a*c) = 0 THEN
1. raizUnica = -b/(2*a)
2. Imprimir “TIENE RAIZ UNICA = ”
3. Imprimir “RAIZ UNICA = ”, raizUnica
e. ELSE
1. IF (Potencia(b,2)-4*a*c) < 0 THEN
a. ParteReal = -b/(2*a)
b. ParteImaginaria =
raizCuad(Absoluto(Potencia(b,2)-4*a*c))/(2*a)
c. Imprimir “TIENE RAICES COMPLEJAS”
d. Imprimir parteReal, “+”, parteImaginaria, “i”
e. Imprimir parteReal, “-”, parteImaginaria, “i”
2. ELSE
a. raizReal1 = (-b+raizCuad(b^2-4*a*c))/(2*a)
b. raizReal2 = (-b-raizCuad(b^2-4*a*c))/(2*a)
c. Imprimir “TIENE RAICES REALES”
d. Imprimir “Raiz Real 1 = “, raizReal1
e. Imprimir “Raiz Real 2 = “, raizReal2
3. ENDIF
f. ENDIF
g. Fin Método principal
Fin Clase Cuadratica1
Fin
Explicación:
En el Método principal de la Clase Cuadratica1, se tienen las acciones:
a.
b.
c.
d.
Se declaran las variables
Se solicitan los coeficientes A, B, C
Se leen en a, b, c
Si (Potencia(b,2)-4*a*c) = 0 entonces
1. Calcula la raizUnica
2. Imprime “TIENE RAIZ UNICA”
3. Imprime la raizUnica
e. Si no
1. Si (Potencia(b,2)-4*a*c) < 0 entonces
a. Calcula parteReal
b. Calcula parteImaginaria
c. Imprime “TIENE RAICES COMPLEJAS”
d. Imprime raizCompleja1
e. Imprime raizCompleja2
2. Si no
4-14 Metodología de la Programación Orientada a Objetos
a. Calcula raizReal1
b. Calcula raizReal2
c. Imprime “TIENE RAICES REALES”
d. Imprime “Raiz Real 1 = “, raizReal1
e. Imprime “Raiz Real 2 = “, raizReal2
3. Fin del IF
f. Fin del IF
g. Fin del método principal
Luego se tiene el fin de la clase y el fin del algoritmo.
Ejercicio 4.7.12
De acuerdo con la igualdad o desigualdad de sus lados los triángulos se clasifican en:
Escaleno todos sus lados son diferentes
Isósceles al menos dos de sus lados son iguales
equilátero los tres lados son iguales. Note que un equilátero también es isósceles
Elaborar un algoritmo que lea el tamaño de los tres lados A, B y C de un triángulo e
imprima que tipo de triángulo es. Utilizar IF-THEN-ELSE.
(Primero hágalo usted...después compare la solución)
Algoritmo TIPO TRIANGULO
Clase TipoTriangulo
1. Método principal
a. Declaraciones
Variables
ladoA, ladoB, ladoC: Real
b. Solicitar LADOA, LADOB, LADOC
c. Leer ladoA, ladoB, ladoC
d. IF (ladoA<>ladoB)AND(ladoA<>ladoC)AND(ladoB<>ladoC) THEN
1. Imprimir “ES ESCALENO”
e. ELSE
1. IF (ladoA=ladoB)AND(ladoA=ladoC)AND(ladoB=ladoC) THEN
a. Imprimir “ES EQUILÁTERO”
2. ELSE
a. Imprimir “ES ISÓSCELES”
3. ENDIF
f. ENDIF
g. Fin Método principal
Fin Clase TipoTriangulo
Fin
Explicación:
En el Método principal de la Clase TipoTriangulo, se tienen las acciones:
Ejercicios resueltos (Continuación...) 4-15
a.
b.
c.
d.
Se declaran las variables
Se solicitan los tres lados
Se leen en ladoA, ladoB, ladoC
Si (ladoA<>ladoB) y (ladoA<>ladoC) y (ladoB<>ladoC) entonces
1. Imprime “ES ESCALENO”
e. Si no
1. Si (ladoA=ladoB) y (ladoA=ladoC) y (ladoB=ladoC) entonces
a. Imprime “ES EQUILÁTERO”
2. Si no
a. Imprime “ES ISÓSCELES”
3. Fin del IF
f. Fin del IF
g. Fin del método principal
Luego se tiene el fin de la clase y el fin del algoritmo.
Ejercicio 4.7.13
Una empresa vende hojas de hielo seco, con las condiciones siguientes:
Si el cliente es tipo 1 se le descuenta el 5 %
Si el cliente es tipo 2 se le descuenta el 8 %
Si el cliente es tipo 3 se le descuenta el 12 %
Si el cliente es tipo 4 se le descuenta el 15 %
Cuando el cliente realiza una compra se generan los datos siguientes:
Nombre del cliente
Tipo de cliente (1,2,3,4)
Cantidad de hojas compradas
Precio por hoja
Elabore un algoritmo que lea estos datos, haga cálculos e imprima:
Nombre del cliente
Sub total a pagar (Cantidad de hojas × Precio por hoja)
Descuento (El porcentaje correspondiente del Sub total a pagar)
Total a pagar (Sub total – Descuento)
Utilizar SWITCH.
(Primero hágalo usted...después compare la solución)
Algoritmo CLIENTE HOJAS HIELO SECO
Clase Cliente1
1. Método principal
a. Declaraciones
4-16 Metodología de la Programación Orientada a Objetos
Variables
nombreClie: Cadena
tipoClie, cantidad: Entero
precioUni, subTotal, descuento, totalPagar: Real
b. Solicitar Nombre, Tipo cliente, Cantidad,
Precio unitario
c. Leer nombreClie, tipoClie, cantidad, precioUni
d. subTotal = cantidad * precioUni
e. SWITCH tipoClie
1: descuento = subTotal * 0.05
2: descuento = subTotal * 0.08
3: descuento = subTotal * 0.12
4: descuento = subTotal * 0.15
f. ENDSWITCH
g. totalPagar = subTotal - descuento
h. Imprimir nombreClie, subTotal, descuento, totalPagar
i. Fin Método principal
Fin Clase Cliente1
Fin
Explicación:
En el Método principal de la Clase Cliente1, se tienen las acciones:
a.
b.
c.
d.
e.
f.
g.
h.
i.
Se declaran las variables
Se solicitan los datos
Se leen en nombreClie, tipoClie, cantidad, precioUni
Se calcula el subTotal
Se plantea el SWITCH con el selector tipoClie
Si tipoClie es 1 calcula descuento con el 5%
Si tipoClie es 2 calcula descuento con el 8%
Si tipoClie es 3 calcula descuento con el 12%
Si tipoClie es 4 calcula descuento con el 15%
Fin del SWITCH
Se calcula el totalPagar
Imprime nombreClie, subTotal, descuento, totalPagar
Fin del método principal
Luego se tiene el fin de la clase y el fin del algoritmo.
Nota:
En caso que se permita que el cliente pueda ser de tipo diferente de 1 a 4, y sólo tienen descuento
éstos tipos; se agregaría el DEFAULT colocándole cero a descuento, ésa parte quedaría:
Ejercicios resueltos (Continuación...) 4-17
e. SWITCH tipoClie
1: descuento
2: descuento
3: descuento
4: descuento
f. DEFAULT
a. descuento
g. ENDSWITCH
=
=
=
=
subTotal
subTotal
subTotal
subTotal
= 0
*
*
*
*
0.05
0.08
0.12
0.15
Descargar