Ejercicio resuelto con tablas de decisión. Ejemplo construcción diagrama de flujo. (CU00149A)

Resumen: Entrega nº 48 del curso Bases de la programación Nivel I.
Codificación aprenderaprogramar.com: CU00149A

 

 

 

Continuamos el ejercicio que veníamos viendo en la entrega anterior.

Construimos la tabla C1 – No.

 

 

TABLA C1 – No

 

4-6-7-12

5-11

10-14

15-16

C1

No

No

No

No

C2

No

-

-

C3

-

-

No

C4

No

No

 

 

Volvemos a aplicar los criterios para dividir.

C2: 2 indiferencias.

C3: 2 indiferencias.

C4: 0 indiferencias.

 

 

C4 divide a C1 – No. Gráficamente:

 

 

Construimos la tabla C1 – No – C4 – Sí.

TABLA C1 – No – C4 – Sí

 

4-6-7-12

5-11

C1

No

No

C2

No

C3

-

-

C4

 

 

La tabla presenta una única fila variante que es C2. Estamos en un punto casi terminal. C2 divide a C1 – No – C4 – Sí y da lugar a dos acciones:

C1 – No – C4 – Sí – C2 – Sí = Acción D.

C1 – No – C4 – Sí – C2 – No = Acción E.

 


 

Volvemos al punto más próximo que tenemos abierto, que es C1 – No – C4 – No

TABLA C1 – No – C4 - No

 

10-14

15-16

C1

No

No

C2

-

-

C3

No

C4

No

No

 

 

La tabla presenta una única fila variante que es C3. Estamos en un punto casi terminal. C3 divide a C1 – No – C4 – No y da lugar a dos acciones.

C1 – No – C4 – No – C3 – Sí = Acción F.

C1 – No – C4 – No – C3 – No = Acción G.

 

Hemos concluido la segunda rama y vamos a dibujar el esquema de decisión completo.

 

 

Ya tenemos configurada la estructura de decisión. Vemos que el número de “acciones” que aparecen (en realidad conjunto de acciones para cada caso) es de 7, mientras que en la tabla de origen teníamos 6 casos. Si esto es así ha de existir una casilla de acción asociada al mismo caso que otra. Si analizamos diagrama frente a tabla vemos que:

C1 – Sí – C2 – No – C4 – Sí = Acción B – Caso 4-6-7-12.

C1 – No – C4 – Sí – C2 – No = Acción E – Caso 4-6-7-12.

 

Finalmente construimos un esquema de decisión referenciado a la tabla de origen.

 

 

Conviene verificar que no hay discordancias entre tabla y esquema para evitar errores. Con este esquema construir pseudocódigo resultará sencillo:

[Pseudocódigo aprenderaprogramar.com]

Si C1 = “S” Entonces

Si C2 = “S” Entonces

Acciones 1-2-3-8

SiNo

Si C4 = “S” Entonces

Acciones 4-6-7-12

SiNo

Acciones 9-13

FinSi

FinSi

SiNo

Si C4 = “S” Entonces

Si C2 = “S” Entonces

Acciones 5-11

SiNo

Acciones 4-6-7-12

FinSi

SiNo

Si C3 = “S” Entonces

Acciones 10-14

SiNo

Acciones 15-16

FinSi

FinSi

FinSi

 

 

COMENTARIOS

La instrucción Según (Caso) Hacer puede resultar de interés en algunas circunstancias. Recordemos que su sintaxis era Según [Expresión] Hacer, por lo que en principio no nos va a ser útil para evaluar múltiples expresiones simultáneamente. De cualquier forma, recomendamos consultar las especificaciones del lenguaje que se esté empleando para conocer a fondo sus posibilidades.

Los ejercicios correspondientes a transformación de tablas de decisión en pseudocódigo y diagramas de flujo los veremos más adelante.

 

 

 

 

 

 

Para acceder a la información general sobre este curso y al listado completo de entregas pulsa en este link:  Ver curso completo.

Para  hacer un comentario o consulta utiliza los foros aprenderaprogramar.com, abiertos a cualquier persona independientemente de su nivel de conocimiento.

¿Puedo yo aprender?

Seas o no del área informática, si quieres aprender a programar te ofrecemos una solución guiada y personalizada: realizar un curso tutorizado on-line. Con este tipo de curso, podrás aprender a programar de forma ágil y amena.

Acceder a detalles y precios de los cursos tutorizados on-line

Política sobre cookies

Utilizamos cookies propias y de terceros para ofrecerte una mejor experiencia y servicio, de acuerdo a tus hábitos de navegación.

Si continúas navegando, consideramos que aceptas su uso. Puedes obtener más información en nuestra Política de Cookies.

En Facebook!

Ahora puedes seguirnos en Facebook. Noticias, novedades y mucho más ¡Te esperamos!

RANKING APR2+

Ranking de lenguajes y entornos de programación aprenderaprogramar.com
 

MAYO - JUNIO 2017

1. Java / J2EE
2. Entornos Oracle
3. Entornos SQL Server
4. .NET, C#
5. JavaScript, jQuery
6. HTML, CSS
7. Php, MySql
8. Android, iOS


Acceder a detalles sobre el ranking de programación aprenderaprogramar.com

FOROS APR2+

Pregunta, responde, consulta, lee, intercambia...

Participa!!! Entra en los foros aprenderaprogramar.com.

             Copyright 2006-2017 aprenderaprogramar.com                La web abierta a cualquier persona interesada en la programación