Advertisement
Guest User

Untitled

a guest
Apr 2nd, 2019
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ada 2.69 KB | None | 0 0
  1. with Ada.Text_IO, Ada.Integer_Text_IO;
  2. use Ada.Integer_Text_IO, Ada.Text_IO;
  3. procedure ejercicio01 is
  4.    -- TAREAS ESTATICAS
  5.    task a_estatica; -- Creamos una tarea estática a
  6.    task body a_estatica is -- Desarrollamos la tarea a
  7.    begin
  8.       for i in 1..3 loop
  9.          Put_Line("Tarea A estatica: "&Integer'Image(i));
  10.       end loop;
  11.    end a_estatica;
  12.    task b_estatica; -- Creamos una tarea estática b
  13.    task body b_estatica is -- Desarrollamos la tarea b
  14.    begin
  15.       for i in 1..3 loop
  16.          Put_Line("Tarea B estatica: "&Integer'Image(i));
  17.       end loop;
  18.    end b_estatica;
  19.    task c_estatica; -- Creamos una tarea estática c
  20.    task body c_estatica  is -- Desarrollamos la tarea c
  21.    begin
  22.       for i in 1..3 loop
  23.          Put_Line("Tarea C estatica: "&Integer'Image(i));
  24.       end loop;
  25.    end c_estatica;
  26.    -- TAREAS DINAMICAS
  27.    task type a_dinamica; -- Creamos una tarea dinamica a
  28.    type a_dinamica_ptr is access a_dinamica; -- Creamos un tipo puntero a la tarea
  29.    var_a_dinamica : a_dinamica_ptr; -- declaramos una variable del tipo puntero
  30.    task body a_dinamica is -- desarrollamos la tarea
  31.    begin
  32.       for i in 1..3 loop
  33.          Put_Line("Tarea A dinamica: "&Integer'Image(i));
  34.       end loop;
  35.    end a_dinamica;
  36.    task type b_dinamica; -- Creamos una tarea dinamica b
  37.    type b_dinamica_ptr is access b_dinamica; -- Creamos un tipo puntero a la tarea
  38.    var_b_dinamica : b_dinamica_ptr; -- declaramos una variable del tipo puntero
  39.    task body b_dinamica is -- desarrollamos la tarea
  40.    begin
  41.       for i in 1..3 loop
  42.          Put_Line("Tarea B dinamica: "&Integer'Image(i));
  43.       end loop;
  44.    end b_dinamica;
  45.    task type c_dinamica;-- Creamos una tarea dinamica c
  46.    type c_dinamica_ptr is access c_dinamica; -- Creamos un tipo puntero a la tarea
  47.    var_c_dinamica : c_dinamica_ptr; -- declaramos una variable del tipo puntero
  48.    task body c_dinamica is -- desarrollamos la tarea
  49.    begin
  50.       for i in 1..3 loop
  51.          Put_Line("Tarea C dinamica: "&Integer'Image(i));
  52.       end loop;
  53.    end c_dinamica;
  54. begin -- Comienza la ejecucion de las tareas estaticas
  55.    -- Instanciamos tres variables dinamicas
  56.    var_a_dinamica := new a_dinamica; -- comienza a_dinamica
  57.    var_b_dinamica := new b_dinamica; -- comienza b_dinamica
  58.    var_c_dinamica := new c_dinamica; -- comienza c_dinamica
  59.    
  60.    -- SECUENCIAL
  61.    
  62.    for i in 1..3 loop
  63.          Put_Line("Tarea A secuencial: "&Integer'Image(i));
  64.    end loop;
  65.    
  66.    for i in 1..3 loop
  67.          Put_Line("Tarea B secuencial: "&Integer'Image(i));
  68.    end loop;
  69.    
  70.    for i in 1..3 loop
  71.          Put_Line("Tarea C secuencial: "&Integer'Image(i));
  72.    end loop;
  73.    
  74. end ejercicio01;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement