with Ada.Text_IO,Ada.Integer_Text_IO;
use Ada.Text_IO,Ada.Integer_Text_IO;
procedure Blocks is
Index,Count:Integer;
begin
Index:=27;
Count:=33;Put("In the main block - values are:");Put(Index,5);-- Blocks.Index
Put(Count,5);-- Blocks.Count
New_Line;
declare
Index,Stuff:Integer:=-345;
begin
Index:=157;Put("In the embedded block - values are:");Put(Blocks.Index,5);--Blocks.index
Put(Index,5);-- local index
Put(Stuff,5);-- local stuff
Put(Count,5);-- blocks.count
New_Line;
end;Put("Back to the main block - values are:");Put(Index,5);-- blocks.index
Put(Count,5);-- Blocks.count
New_Line;
Who:-- block name
declare
Index,Stuff:Integer:=-345;
begin
Index:=157;Put("In the block named Who -- values are:");Put(Blocks.Index,5);-- Blocks.index
Put(Index,5);--who.index
Put(Who.Index,5);--who.index
Put(Stuff,5);--who.stuff
Put(Who.Stuff,5);--Who.stuff
Put(Count,5);--Blocks.count
New_Line;
end Who;Put("Back to the main block -- value are");Put(Index,5);--Blocks.index
Put(Count,5);--Blocks.count
New_Line;
end Blocks;