DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

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

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦dba11082c⟧ Ada Source

    Length: 3072 (0xc00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Newfile, seg_0564cd

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 

E3 Source Code



with Stack;
with Text_Io;
with Io;
with Afficher;

procedure Newfile is

    package Pile is new Stack (Item => Integer);

    I : Integer;

begin

    Text_Io.Put ("taille de la pile : ");
    Io.Get (Item => I, Width => 0);
    declare
        P : Pile.Objet (Taille => Pile.Indice (I + 1));
        Rep : Character := ' ';  
        Elem : Integer;
    begin
        Pile.Creation (P);
        while Rep /= 'f' loop
            Text_Io.Put
               ("Quel est votre choix ? ( (e)mpiler (d)depiler (v)ider (f)in (a)fficher : ");
            Io.Get (Item => Rep);
            case Rep is
                when 'a' =>
                    Pile.Afficher (P);
                when 'e' =>
                    if not Pile.Pleine (P) then
                        Text_Io.Put ("entier a empiler ? : ");
                        Io.Get (Item => Elem, Width => 0);
                        Pile.Push (P, Elem);
                    else
                        Text_Io.Put_Line ("Pile pleine ");
                    end if;
                when 'd' =>
                    if not Pile.Vide (P) then
                        Pile.Pop (P);
                    else
                        Text_Io.Put_Line ("Pile vide ");
                    end if;

                when 'v' =>
                    while not Pile.Vide (P) loop  
                        Pile.Top (P, Elem);
                        Text_Io.Put_Line (Integer'Image (Elem));
                        Pile.Pop (P);
                    end loop;

                when others =>
                    null;
            end case;
        end loop;
    end;

end Newfile;




E3 Meta Data

    nblk1=2
    nid=0
    hdr6=4
        [0x00] rec0=24 rec1=00 rec2=01 rec3=020
        [0x01] rec0=1a rec1=00 rec2=02 rec3=001
    tail 0x2154da16e87c43874a650 0x42a00088462060003