DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T V

⟦b88abc0cd⟧ TextFile

    Length: 1839 (0x72f)
    Types: TextFile
    Names: »V«

Derivation

└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
    └─⟦5cb1d1d7f⟧ »DATA« 
        └─⟦3b1ee7bd8⟧ 
            └─⟦this⟧ 

TextFile

package Hpsort is



    -- TITLE:       HEAP SORT PERFORMANCE TEST

    -- PURPOSE:     THIS IS THE ADA VERSION OF THE HEAP SORT ALGORITHM

    --              SUPPLIED BY THE SANTA TERSA LAB FOR PERFORMANCE TESTING.

    --              THIS ALGORITHM IS BEING WRITTEN IN ADA, PASCAL AND

    --              ASSEMBLER AND THEN COMPARED WITH RESPECT TO EXECUTION

    --              TIME AND STORAGE USAGE.

    -- DESCRIPTION: THIS HEAP SORT PUTS THE SMALLEST VALUE IN THE FIRST

    --              ELEMENT OF THE INPUT ARRAY.

    --              THIS HEAP SORT ALGORITHM IS DIVIDED INTO TWO PARTS.

    --              THE FIRST PART IS TO TAKE TRANSPOSE THE INPUT ARRAY

    --              INTO A HEAP; I.E.

    --                   HEAP(I) >= HEAP(2I) AND HEAP(I) >= HEAP(2I+1)

    --              THE LARGEST ELEMENT IS ALWAYS THE FIRST ELEMENT IN THE

    --              HEAP AT THE COMPLETION OF THE FIRST PART OF THE

    --              ALGORITHM.

    --

    --              THE SECOND PART PART OF THE ALGORITHM SIFTS THE

    --              HEAP BY TAKING THE FIRST ELEMENT WHICH IS THE LARGEST

    --              AND PUTTING IT AT THE END OF THE ARRAY. THE REMAINING

    --              ELEMENTS ARE SIFTED TO PUT THE LARGEST ELEMENT AT THE

    --              FRONT OF THE ARRAY. THE FIRST ELEMENT IS AGAIN MOVED

    --              TO THE BACK OF THE ARRAY AND THE REMAINING ELEMENTS

    --              ARE SIFTED TO FIND THE LARGEST REMAINING ELEMENT. THIS

    --              IS REPEATED UNTIL THERE IS JUST ONE ELEMENT LEFT.



    subtype Small_Int is Integer range -16370 .. 16370;

    subtype Pos_Int is Integer range 0 .. 100;

    type Heap_Array is array (Pos_Int) of Small_Int;



    procedure Heapsort (Heap : in out Heap_Array;

                        Heapsize : in Pos_Int);

end Hpsort;