Dilema Filosofos

6
Dilema de la cena de la cena de los filósofos Datos de entrada Reglas : Restricción de cantidad de filósofos que cenan 2 Cantidad de filósofos que meditan 3 ALGORITMO Y SEUDOCODIGO : Este algoritmo se desarrolla para mostrar en pantalla la solución del dilema de la cena de los filósofos indicando que filósofos deben tomar los palos chinos para cenar, indica los filósofos que deben cenar y además indican cuando deben soltar los palos chinos. La solución planteada para este problema consiste en la elaboración de ciclos con condiciones y formulas simples matematicas, las cuales no permitirán determinar el orden de cena para los filosofos Declaración de variables Int a=0; Int b=0; Int i=0; Int j= 0; Cuerpo del programa for(j=0;j<5;j++) a=0; b=0; i=0; Ciclo que permite determinar la cantidad de veces que el procedimiento se aplicara for(i=0;i<5;i++)

Transcript of Dilema Filosofos

Page 1: Dilema Filosofos

Dilema de la cena de la cena de los filósofos

Datos de entrada

Reglas :

Restricción de cantidad de filósofos que cenan 2 Cantidad de filósofos que meditan 3

ALGORITMO Y SEUDOCODIGO :

Este algoritmo se desarrolla para mostrar en pantalla la solución del dilema de la cena de los filósofos indicando que filósofos deben tomar los palos chinos para cenar, indica los filósofos que deben cenar y además indican cuando deben soltar los palos chinos.

La solución planteada para este problema consiste en la elaboración de ciclos con condiciones y formulas simples matematicas, las cuales no permitirán determinar el orden de cena para los filosofos

Declaración de variables

Int a=0;

Int b=0;

Int i=0;

Int j= 0;

Cuerpo del programa

for(j=0;j<5;j++)

a=0;

b=0;

i=0;

Ciclo que permite determinar la cantidad de veces que el procedimiento se aplicara

for(i=0;i<5;i++)

Comparaciones lógicas

Si(a==0){ primer recorido

Operaciones dentro de la comparación

Page 2: Dilema Filosofos

A=a+1 determina con el valor de a que filosofo debe tomar los palos chinos y debe cenar

B=a+2 determina con el valor de b que filosofo debe tomar los palos chinos y debe cenar con a

Se muestra la impresión por pantalla de el numero del filosofo debe tomar la cena y su acompañante.

I++ incremento que permite validar la cantidad de veces que se ejecuta el ciclo de comparaciones

_______________________________________________________

Si la comparación 1 (a==0 ) no es verdadera entra la segunda comparación.

Si(a==1){ segunda comparación

Operaciones dentro de la comparación

A=a+1 determina con el valor de a que filosofo debe tomar los palos chinos y debe cenar

B=a+2 determina con el valor de b que filosofo debe tomar los palos chinos y debe cenar con a

Se muestra la impresión por pantalla de el numero del filosofo debe tomar la cena y su acompañante.

I++ incremento que permite validar la cantidad de veces que se ejecuta el ciclo de comparaciones

_______________________________________________________

Si la comparación 2 (a==1 ) no es verdadera entra la segunda comparación.

Si(a==2){ tercera comparación

Operaciones dentro de la comparación

A=a+1 determina con el valor de a que filosofo debe tomar los palos chinos y debe cenar

B=a+2 determina con el valor de b que filosofo debe tomar los palos chinos y debe cenar con a

Se muestra la impresión por pantalla de el numero del filosofo debe tomar la cena y su acompañante.

I++ incremento que permite validar la cantidad de veces que se ejecuta el ciclo de comparaciones

_______________________________________________________

Si la comparación (a==2) no es verdadera entra la segunda comparación.

Si(a==3){ segunda comparación

Operaciones dentro de la comparación

Page 3: Dilema Filosofos

A=a+1 determina con el valor de a que filosofo debe tomar los palos chinos y debe cenar

B=a-3 determina con el valor de b que filosofo debe tomar los palos chinos y debe cenar con a

Se muestra la impresión por pantalla de el numero del filosofo debe tomar la cena y su acompañante.

I++ incremento que permite validar la cantidad de veces que se ejecuta el ciclo de comparaciones

__________________________________________________________

Si la comparación (a==3) no es verdadera entra la segunda comparación.

Si(a==4){ segunda comparación

Operaciones dentro de la comparación

A=a+1 determina con el valor de a que filosofo debe tomar los palos chinos y debe cenar

B=a-3 determina con el valor de b que filosofo debe tomar los palos chinos y debe cenar con a

Se muestra la impresión por pantalla de el numero del filosofo debe tomar la cena y su acompañante.

I++;

Incremento que permite validar la cantidad de veces que se realizan las comparciones

Con esta comparación debe terminar el algoritmo dando inicio al siclo nuevamente hasta el límite determinado en el ciclo que es 5.

J++;

Este incremento permite que el conteo se reinicie co el fin de repetir las comparaciones ya mencionadas.

Salida

se muestra por pantalla los filósofos que deben tomar los palitos para cenar y luego de cenar los deben soltar.

DIAGRAMA DE FLUJO

Page 4: Dilema Filosofos
Page 5: Dilema Filosofos