|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 1598 (0x63e)
Types: TextFile
Names: »B«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦this⟧
└─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04
└─⟦d65440be7⟧ »DATA«
└─⟦this⟧
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦e24fb53b7⟧
└─⟦this⟧
with Slot;
with Towers_Of_Hanoi_Kbs;
with Towers_Of_Hanoi_Frames;
with Towers_Of_Hanoi_Graphic;
with Towers_Of_Hanoi_Rules_For_Graphic;
with Text_Io;
use Towers_Of_Hanoi_Kbs;
use Towers_Of_Hanoi_Frames;
procedure Towers_Of_Hanoi_Graphic_Solution is
use Kbs;
Initial_Tower_Size : constant := 10;
Initial_Priority : constant := 1;
Disk_Size : Integer;
package Toh_Rules renames Towers_Of_Hanoi_Rules_For_Graphic;
procedure Infere_On_Towers_Of_Hanoi is
new Kbs.Rule_Base.Infere (Do_Action => Toh_Rules.Do_Action);
begin
Towers.Add ((Location => Slot.Value (1),
Disk_Count => Slot.Value (Initial_Tower_Size)));
Towers.Add ((Location => Slot.Value (2),
Disk_Count => Slot.Value (0)));
Towers.Add ((Location => Slot.Value (3),
Disk_Count => Slot.Value (0)));
for I in 1 .. Initial_Tower_Size loop
Disk_Size := 12 - I;
Disks.Add ((Tower => Slot.Value (1),
Level => Slot.Value (I),
Size => Slot.Value (Disk_Size)));
Towers_Of_Hanoi_Graphic.Print_Disk (1, I, Disk_Size);
end loop;
Movements.Add ((From_Tower => Slot.Value (1),
To_Tower => Slot.Value (3),
Count => Slot.Value (Initial_Tower_Size),
Priority => Slot.Value (Initial_Priority)));
for I in 1 .. 3 loop
Towers_Of_Hanoi_Graphic.Print_Needle (I, Height => 15);
end loop;
delay 1.5;
Infere_On_Towers_Of_Hanoi;
end Towers_Of_Hanoi_Graphic_Solution;