Ejercicio 3

Ejercicio 3

de Rodrigo Alain De La Vega Rodriguez -
Número de respuestas: 5

Buenas! Estoy haciendo este ejercicio y me gustaría saber si hay que darle tanto detalle al grafo, por ejemplo en el PDF que adjunto verán que asigne tareas del estilo "Darle un valor a 'a' " y otras como separar un producto por ejemplo 3xaxb se debe hacer en dos tareas donde una es hacer 3xa y en la otra solo quedaría darle un valor a b para luego hacer el producto final.

Luego quisiera saber si este es un grafo correcto ya que la letra pide el de mayor concurrencia, en caso contrario que seria lo que me falto o lo que estoy haciendo mal?

Respecto al código del programa y suponiendo que el grafo que hice es correcto, quisiera que me digan si es correcto el código o si ven algo que este mal.

Grafo: Adjunto PDF con imagen
Código del programa (Asumí que solo había que usar cobegin y los nombres de los procesos están asociados en el PDF adjunto):

      begin

cobegin

begin

cobegin

begin

S0;

S8;

end

S1;

coend

S9;

S11;

end

begin

cobegin

begin

S2;

S3;

S7;

end

begin

S4;

S5;

S6;

end

coend

S10;

end

coend

S(1)

end


 

En respuesta a Rodrigo Alain De La Vega Rodriguez

Re: Ejercicio 3

de Jorge Merlino -
Las variables ya tienen valores, no es necesario hacer un proceso que las cargue. Lo demás está bien.
Lo que veo mal del grafo es que S2,S3 y S4,S5 se podrían hacer en paralelo.
En respuesta a Jorge Merlino

Re: Ejercicio 3

de Rodrigo Alain De La Vega Rodriguez -
Jorge, buenos días. Gracias por tu respuesta. Siguiendo tu comentario; me entrevera un poco ya que a veces me parece que se generan dependencias innecesarias. Pero creo que con el siguiente cambio estoy contemplando lo que decís y no genera problemas:

begin     
      cobegin
           S2;
           S3;
           S4;
           S5; 
      coend

      cobegin
            S6;               
            S7;
      coend          

end

S10;

Si sigo errado te pido que me expliques un poco mas.
Gracias! Saludos
En respuesta a Rodrigo Alain De La Vega Rodriguez

Re: Ejercicio 3

de Jorge Merlino -

Ahi estás poniendo dependencias extra, por ejemplo S7 tiene que esperar a que terminen S4 y S5.

Sería algo así:

cobegin
begin
cobegin
s2
s3
coend
s7
end
begin
cobegin
s4
s5
coend
s6
end
coend
s10


En respuesta a Jorge Merlino

Re: Ejercicio 3

de Veronica Viviana Pintos Fernandez -
Buenas, qué tal?

Pensé otra solución para el ejercicio y quería corroborarlo:

S0 = 3xa
S1 = 3xaxb
S2 = 3xaxb + 4
S3A = c+d
S3B = e-f
S4 = (c+d)^(e-f)
S5 = [3xaxb + 4] / [(c+d)^(e-f)]

Grafo:
S0 -> S1 -> S2 -> S5
S3A -> S4
S3B -> S4
S4 -> S5

Programa:
Begin
Cobegin
Begin
Cobegin
S3A;
S3B;
Coend
S4;
End
Begin
S0;
S1;
S2;
End
Coend
S5;
End


Desde ya muchas gracias.
Saluda,
Verónica.