DataMuseum.dk

Presents historical artifacts from the history of:

MIKADOS

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

See our Wiki for more about MIKADOS

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦1f63f16d6⟧ TextFile

    Length: 5056 (0x13c0)
    Types: TextFile
    Notes: Mikados_K
    Names: »PSPARSE.K«

Derivation

└─⟦d110b5765⟧ Bits:30005308 Eksamensopgave i dynamiske systemer med FFT
    └─⟦this⟧ »PSPARSE.K« 

Mikados K File

PROGRAM SPARSE;
CONST N=40;
TYPE
    NBLPIL=^NBL;
    KNLPIL=^KNL;
     NBL= RECORD
              NB: INTEGER;
              NEXTNB:NBLPIL;
           END;
    KNL= RECORD
          AN,KN:INTEGER;
          NAP: NBLPIL;
          NEXTKN:KNLPIL;
         END;
     OUT=PACKED ARRAY (.1..42.) OF CHAR;
     VR=ARRAY(.1..40.) OF INTEGER;
VAR P2,NXNB,NAP,FINA: NBLPIL;
    I,S,K,J,TEST:INTEGER;
    P1,NXKN,FIRST,VH,PIL,HH,PP,HP,VP: KNLPIL;
    v,h,m:char;
    NR:ARRAY(.1..40.) OF INTEGER;
    PK,pl:out;
BEGIN
 
 WRITELN(CHR(27),CHR(70),CHR(48),CHR(9));
I:=1; K:=1;FIRST:=NIL;
  WHILE (I<=N) AND (K>0) DO
  BEGIN
    WRITELN('KNUDENR ',I:2,'=?','OG ANTAL NABOER?');
  READ(K,S); NEW(P1);
    WITH P1^ DO
      BEGIN
      NEXTKN:=FIRST;
      AN:=S;
      KN:=K;
      END; (* WITH P1^ *)
    FIRST:=P1; FINA:=NIL;
    FOR J:=1 TO S DO
    BEGIN
         WRITELN('INDTAST NR. PAA NABO NR ',J:2);
         READ(K); NEW(P2);
          WITH P2^ DO
          BEGIN
          NEXTNB:=FINA;
          NB:=K;
          END; (* WITH P2^ *)
      FINA:=P2;
    END;
    P1^.NAP:=FINA;
 
    I:=I+1;
  END;
WRITELN('INDLAESNINGEN SLUT GOD NAT ');
READLN;
 
FIRST:=FIRST^.NEXTKN;
VH:=FIRST;PIL:=FIRST^.NEXTKN;
HH:=PIL^.NEXTKN; TEST:=PIL^.AN;
(*ORDNING EFTER VOKSENDE GRAD*)
WHILE (PIL<>NIL) DO
  BEGIN
    WRITELN('PIL',PIL^.KN:4,'PP',PP^.KN:4);
    P1:=FIRST;
    WHILE (P1^.NEXTKN<>NIL) DO BEGIN   WRITELN(P1^.KN:4);
                                       P1:=P1^.NEXTKN;
                               END;
     PP:=FIRST; HP:=FIRST^.NEXTKN;
     WHILE (PP<>PIL) DO
       BEGIN
         IF (TEST>PP^.AN) THEN
          BEGIN
            VP:=PP; PP:=HP; HP:=PP^.NEXTKN;
          END
         ELSE
          BEGIN
           IF (PP=FIRST) THEN
           BEGIN
            PIL^.NEXTKN:=FIRST;
            FIRST:=PIL;
            VH^.NEXTKN:=HH;
                    
 
           END
 
         ELSE
          BEGIN
           VH^.NEXTKN:=HH;
           PIL^.NEXTKN:=PP;
           VP^.NEXTKN:=PIL;
          END;
         PIL:=VH;
         PP:=PIL;
       END;
     END;
     VH:=PIL;
     PIL:=HH;
     HH:=PIL^.NEXTKN;
     TEST:=PIL^.AN;
     P1:=FIRST;WRITE('NY ORDNING');
WHILE (P1<>NIL) DO BEGIN
                         WRITELN(P1^.KN);P1:=P1^.NEXTKN;
                   END;
    END;
WRITELN(LIST,'KNUDENR    NABOER');
J:=1;
P1:=FIRST;
WHILE (P1<>NIL) DO
  BEGIN
           
    READLN;
  WITH P1^ DO
    BEGIN
      WRITELN(LIST,KN:2,'          ');
      P2:=NAP;
      FOR S:=1 TO AN DO
      BEGIN
        WITH P2^ DO
        WRITE(LIST,NB:2,' , ');
        P2:=P2^.NEXTNB;
      END;
      NR(J):=KN;
    END;
    J:=J+1;  
    WRITELN;
    P1:=P1^.NEXTKN;
 
  END;
  v:='Ø'; h:='-'; m:='*';
  pK:='                                          ';
  PL:=PK;
  pl(2):=h; pl(i+1):=h;
  writeln(pl);
  pl:=PK;
     pl(1):=V;  pl(i+2):=v;
     P1:=FIRST;
     WHILE (P1<>NIL) DO
     BEGIN
     WITH P1^ DO
     BEGIN
       P2:=NAP;
       FOR S:=1 TO AN DO
       BEGIN
         WITH P2^ DO
         PL(ORD(NB)):=M;
         P2:=P2^.NEXTNB;
       END;
       PL(ORD(KN)):=M;
       P1:=P1^.NEXTKN;
       WRITELN(PL);
     END;
     PL:=PK;
     END;
 
 
 
 
 END.

Mikados K File

0x0000…0011 Line {l1=0x0f, l2=»PROGRAM SPARSE;«, l3=0x0f}
0x0011…001e Line {l1=0x0b, l2=»CONST N=40;«, l3=0x0b}
0x001e…0024 Line {l1=0x04, l2=»TYPE«, l3=0x04}
0x0024…0036 Line {l1=0x10, l2=»    NBLPIL=^NBL;«, l3=0x10}
0x0036…0048 Line {l1=0x10, l2=»    KNLPIL=^KNL;«, l3=0x10}
0x0048…005a Line {l1=0x10, l2=»     NBL= RECORD«, l3=0x10}
0x005a…0076 Line {l1=0x1a, l2=»              NB: INTEGER;«, l3=0x1a}
0x0076…0094 Line {l1=0x1c, l2=»              NEXTNB:NBLPIL;«, l3=0x1c}
0x0094…00a5 Line {l1=0x0f, l2=»           END;«, l3=0x0f}
0x00a5…00b6 Line {l1=0x0f, l2=»    KNL= RECORD«, l3=0x0f}
0x00b6…00d0 Line {l1=0x18, l2=»          AN,KN:INTEGER;«, l3=0x18}
0x00d0…00e8 Line {l1=0x16, l2=»          NAP: NBLPIL;«, l3=0x16}
0x00e8…0102 Line {l1=0x18, l2=»          NEXTKN:KNLPIL;«, l3=0x18}
0x0102…0111 Line {l1=0x0d, l2=»         END;«, l3=0x0d}
0x0111…013b Line {l1=0x28, l2=»     OUT=PACKED ARRAY (.1..42.) OF CHAR;«, l3=0x28}
0x013b…015f Line {l1=0x22, l2=»     VR=ARRAY(.1..40.) OF INTEGER;«, l3=0x22}
0x015f…017e Line {l1=0x1d, l2=»VAR P2,NXNB,NAP,FINA: NBLPIL;«, l3=0x1d}
0x017e…0199 Line {l1=0x19, l2=»    I,S,K,J,TEST:INTEGER;«, l3=0x19}
0x0199…01c8 Line {l1=0x2d, l2=»    P1,NXKN,FIRST,VH,PIL,HH,PP,HP,VP: KNLPIL;«, l3=0x2d}
0x01c8…01d9 Line {l1=0x0f, l2=»    v,h,m:char;«, l3=0x0f}
0x01d9…01fc Line {l1=0x21, l2=»    NR:ARRAY(.1..40.) OF INTEGER;«, l3=0x21}
0x01fc…020c Line {l1=0x0e, l2=»    PK,pl:out;«, l3=0x0e}
0x020c…0213 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x0213…0216 Line {l1=0x01, l2=» «, l3=0x01}
0x0216…0241 Line {l1=0x29, l2=» WRITELN(CHR(27),CHR(70),CHR(48),CHR(9));«, l3=0x29}
0x0241…0259 Line {l1=0x16, l2=»I:=1; K:=1;FIRST:=NIL;«, l3=0x16}
0x0259…0276 Line {l1=0x1b, l2=»  WHILE (I<=N) AND (K>0) DO«, l3=0x1b}
0x0276…027f Line {l1=0x07, l2=»  BEGIN«, l3=0x07}
0x027f…02b5 Line {l1=0x34, l2=»    WRITELN('KNUDENR ',I:2,'=?','OG ANTAL NABOER?');«, l3=0x34}
0x02b5…02cc Line {l1=0x15, l2=»  READ(K,S); NEW(P1);«, l3=0x15}
0x02cc…02dd Line {l1=0x0f, l2=»    WITH P1^ DO«, l3=0x0f}
0x02dd…02ea Line {l1=0x0b, l2=»      BEGIN«, l3=0x0b}
0x02ea…0300 Line {l1=0x14, l2=»      NEXTKN:=FIRST;«, l3=0x14}
0x0300…030e Line {l1=0x0c, l2=»      AN:=S;«, l3=0x0c}
0x030e…031c Line {l1=0x0c, l2=»      KN:=K;«, l3=0x0c}
0x031c…0337 Line {l1=0x19, l2=»      END; (* WITH P1^ *)«, l3=0x19}
0x0337…0352 Line {l1=0x19, l2=»    FIRST:=P1; FINA:=NIL;«, l3=0x19}
0x0352…0368 Line {l1=0x14, l2=»    FOR J:=1 TO S DO«, l3=0x14}
0x0368…0373 Line {l1=0x09, l2=»    BEGIN«, l3=0x09}
0x0373…03a6 Line {l1=0x31, l2=»         WRITELN('INDTAST NR. PAA NABO NR ',J:2);«, l3=0x31}
0x03a6…03c2 Line {l1=0x1a, l2=»         READ(K); NEW(P2);«, l3=0x1a}
0x03c2…03d9 Line {l1=0x15, l2=»          WITH P2^ DO«, l3=0x15}
0x03d9…03ea Line {l1=0x0f, l2=»          BEGIN«, l3=0x0f}
0x03ea…0403 Line {l1=0x17, l2=»          NEXTNB:=FINA;«, l3=0x17}
0x0403…0415 Line {l1=0x10, l2=»          NB:=K;«, l3=0x10}
0x0415…0434 Line {l1=0x1d, l2=»          END; (* WITH P2^ *)«, l3=0x1d}
0x0434…0445 Line {l1=0x0f, l2=»      FINA:=P2;«, l3=0x0f}
0x0445…044f Line {l1=0x08, l2=»    END;«, l3=0x08}
0x044f…0463 Line {l1=0x12, l2=»    P1^.NAP:=FINA;«, l3=0x12}
0x0463…0466 Line {l1=0x01, l2=» «, l3=0x01}
0x0466…0473 Line {l1=0x0b, l2=»    I:=I+1;«, l3=0x0b}
0x0473…047b Line {l1=0x06, l2=»  END;«, l3=0x06}
0x047b…04a4 Line {l1=0x27, l2=»WRITELN('INDLAESNINGEN SLUT GOD NAT ');«, l3=0x27}
0x04a4…04ad Line {l1=0x07, l2=»READLN;«, l3=0x07}
0x04ad…04b0 Line {l1=0x01, l2=» «, l3=0x01}
0x04b0…04c7 Line {l1=0x15, l2=»FIRST:=FIRST^.NEXTKN;«, l3=0x15}
0x04c7…04e6 Line {l1=0x1d, l2=»VH:=FIRST;PIL:=FIRST^.NEXTKN;«, l3=0x1d}
0x04e6…0507 Line {l1=0x1f, l2=»HH:=PIL^.NEXTKN; TEST:=PIL^.AN;«, l3=0x1f}
0x0507…0528 Line {l1=0x1f, l2=»(*ORDNING EFTER VOKSENDE GRAD*)«, l3=0x1f}
0x0528…053d Line {l1=0x13, l2=»WHILE (PIL<>NIL) DO«, l3=0x13}
0x053d…0546 Line {l1=0x07, l2=»  BEGIN«, l3=0x07}
0x0546…0573 Line {l1=0x2b, l2=»    WRITELN('PIL',PIL^.KN:4,'PP',PP^.KN:4);«, l3=0x2b}
0x0573…0583 Line {l1=0x0e, l2=»    P1:=FIRST;«, l3=0x0e}
0x0583…05be Line {l1=0x39, l2=»    WHILE (P1^.NEXTKN<>NIL) DO BEGIN   WRITELN(P1^.KN:4);«, l3=0x39}
0x05be…05f6 Line {l1=0x36, l2=»                                       P1:=P1^.NEXTKN;«, l3=0x36}
0x05f6…061b Line {l1=0x23, l2=»                               END;«, l3=0x23}
0x061b…063f Line {l1=0x22, l2=»     PP:=FIRST; HP:=FIRST^.NEXTKN;«, l3=0x22}
0x063f…0658 Line {l1=0x17, l2=»     WHILE (PP<>PIL) DO«, l3=0x17}
0x0658…0666 Line {l1=0x0c, l2=»       BEGIN«, l3=0x0c}
0x0666…0686 Line {l1=0x1e, l2=»         IF (TEST>PP^.AN) THEN«, l3=0x1e}
0x0686…0697 Line {l1=0x0f, l2=»          BEGIN«, l3=0x0f}
0x0697…06c4 Line {l1=0x2b, l2=»            VP:=PP; PP:=HP; HP:=PP^.NEXTKN;«, l3=0x2b}
0x06c4…06d3 Line {l1=0x0d, l2=»          END«, l3=0x0d}
0x06d3…06e2 Line {l1=0x0d, l2=»         ELSE«, l3=0x0d}
0x06e2…06f3 Line {l1=0x0f, l2=»          BEGIN«, l3=0x0f}
0x06f3…0712 Line {l1=0x1d, l2=»           IF (PP=FIRST) THEN«, l3=0x1d}
0x0712…0724 Line {l1=0x10, l2=»           BEGIN«, l3=0x10}
0x0724…0745 Line {l1=0x1f, l2=»            PIL^.NEXTKN:=FIRST;«, l3=0x1f}
0x0745…075e Line {l1=0x17, l2=»            FIRST:=PIL;«, l3=0x17}
0x075e…077b Line {l1=0x1b, l2=»            VH^.NEXTKN:=HH;«, l3=0x1b}
0x077b…0791 Line {l1=0x14, l2=»                    «, l3=0x14}
0x0791…0794 Line {l1=0x01, l2=» «, l3=0x01}
0x0794…07a4 Line {l1=0x0e, l2=»           END«, l3=0x0e}
0x07a4…07a7 Line {l1=0x01, l2=» «, l3=0x01}
0x07a7…07b6 Line {l1=0x0d, l2=»         ELSE«, l3=0x0d}
0x07b6…07c7 Line {l1=0x0f, l2=»          BEGIN«, l3=0x0f}
0x07c7…07e3 Line {l1=0x1a, l2=»           VH^.NEXTKN:=HH;«, l3=0x1a}
0x07e3…0800 Line {l1=0x1b, l2=»           PIL^.NEXTKN:=PP;«, l3=0x1b}
0x0800…081d Line {l1=0x1b, l2=»           VP^.NEXTKN:=PIL;«, l3=0x1b}
0x081d…082d Line {l1=0x0e, l2=»          END;«, l3=0x0e}
0x082d…0840 Line {l1=0x11, l2=»         PIL:=VH;«, l3=0x11}
0x0840…0853 Line {l1=0x11, l2=»         PP:=PIL;«, l3=0x11}
0x0853…0860 Line {l1=0x0b, l2=»       END;«, l3=0x0b}
0x0860…086b Line {l1=0x09, l2=»     END;«, l3=0x09}
0x086b…087a Line {l1=0x0d, l2=»     VH:=PIL;«, l3=0x0d}
0x087a…0889 Line {l1=0x0d, l2=»     PIL:=HH;«, l3=0x0d}
0x0889…08a0 Line {l1=0x15, l2=»     HH:=PIL^.NEXTKN;«, l3=0x15}
0x08a0…08b5 Line {l1=0x13, l2=»     TEST:=PIL^.AN;«, l3=0x13}
0x08b5…08da Line {l1=0x23, l2=»     P1:=FIRST;WRITE('NY ORDNING');«, l3=0x23}
0x08da…08f4 Line {l1=0x18, l2=»WHILE (P1<>NIL) DO BEGIN«, l3=0x18}
0x08f4…092e Line {l1=0x38, l2=»                         WRITELN(P1^.KN);P1:=P1^.NEXTKN;«, l3=0x38}
0x092e…0947 Line {l1=0x17, l2=»                   END;«, l3=0x17}
0x0947…0951 Line {l1=0x08, l2=»    END;«, l3=0x08}
0x0951…0975 Line {l1=0x22, l2=»WRITELN(LIST,'KNUDENR    NABOER');«, l3=0x22}
0x0975…097c Line {l1=0x05, l2=»J:=1;«, l3=0x05}
0x097c…0988 Line {l1=0x0a, l2=»P1:=FIRST;«, l3=0x0a}
0x0988…099c Line {l1=0x12, l2=»WHILE (P1<>NIL) DO«, l3=0x12}
0x099c…09a5 Line {l1=0x07, l2=»  BEGIN«, l3=0x07}
0x09a5…09b2 Line {l1=0x0b, l2=»           «, l3=0x0b}
0x09b2…09bf Line {l1=0x0b, l2=»    READLN;«, l3=0x0b}
0x09bf…09ce Line {l1=0x0d, l2=»  WITH P1^ DO«, l3=0x0d}
0x09ce…09d9 Line {l1=0x09, l2=»    BEGIN«, l3=0x09}
0x09d9…0a01 Line {l1=0x26, l2=»      WRITELN(LIST,KN:2,'          ');«, l3=0x26}
0x0a01…0a11 Line {l1=0x0e, l2=»      P2:=NAP;«, l3=0x0e}
0x0a11…0a2a Line {l1=0x17, l2=»      FOR S:=1 TO AN DO«, l3=0x17}
0x0a2a…0a37 Line {l1=0x0b, l2=»      BEGIN«, l3=0x0b}
0x0a37…0a4c Line {l1=0x13, l2=»        WITH P2^ DO«, l3=0x13}
0x0a4c…0a6d Line {l1=0x1f, l2=»        WRITE(LIST,NB:2,' , ');«, l3=0x1f}
0x0a6d…0a86 Line {l1=0x17, l2=»        P2:=P2^.NEXTNB;«, l3=0x17}
0x0a86…0a92 Line {l1=0x0a, l2=»      END;«, l3=0x0a}
0x0a92…0aa4 Line {l1=0x10, l2=»      NR(J):=KN;«, l3=0x10}
0x0aa4…0aae Line {l1=0x08, l2=»    END;«, l3=0x08}
0x0aae…0abd Line {l1=0x0d, l2=»    J:=J+1;  «, l3=0x0d}
0x0abd…0acb Line {l1=0x0c, l2=»    WRITELN;«, l3=0x0c}
0x0acb…0ae0 Line {l1=0x13, l2=»    P1:=P1^.NEXTKN;«, l3=0x13}
0x0ae0…0ae3 Line {l1=0x01, l2=» «, l3=0x01}
0x0ae3…0aeb Line {l1=0x06, l2=»  END;«, l3=0x06}
0x0aeb…0b06 Line {l1=0x19, l2=»  v:='Ø'; h:='-'; m:='*';«, l3=0x19}
0x0b06…0b3b Line {l1=0x33, l2=»  pK:='                                          ';«, l3=0x33}
0x0b3b…0b46 Line {l1=0x09, l2=»  PL:=PK;«, l3=0x09}
0x0b46…0b5f Line {l1=0x17, l2=»  pl(2):=h; pl(i+1):=h;«, l3=0x17}
0x0b5f…0b6f Line {l1=0x0e, l2=»  writeln(pl);«, l3=0x0e}
0x0b6f…0b7a Line {l1=0x09, l2=»  pl:=PK;«, l3=0x09}
0x0b7a…0b97 Line {l1=0x1b, l2=»     pl(1):=V;  pl(i+2):=v;«, l3=0x1b}
0x0b97…0ba8 Line {l1=0x0f, l2=»     P1:=FIRST;«, l3=0x0f}
0x0ba8…0bc1 Line {l1=0x17, l2=»     WHILE (P1<>NIL) DO«, l3=0x17}
0x0bc1…0bcd Line {l1=0x0a, l2=»     BEGIN«, l3=0x0a}
0x0bcd…0bdf Line {l1=0x10, l2=»     WITH P1^ DO«, l3=0x10}
0x0bdf…0beb Line {l1=0x0a, l2=»     BEGIN«, l3=0x0a}
0x0beb…0bfc Line {l1=0x0f, l2=»       P2:=NAP;«, l3=0x0f}
0x0bfc…0c16 Line {l1=0x18, l2=»       FOR S:=1 TO AN DO«, l3=0x18}
0x0c16…0c24 Line {l1=0x0c, l2=»       BEGIN«, l3=0x0c}
0x0c24…0c3a Line {l1=0x14, l2=»         WITH P2^ DO«, l3=0x14}
0x0c3a…0c54 Line {l1=0x18, l2=»         PL(ORD(NB)):=M;«, l3=0x18}
0x0c54…0c6e Line {l1=0x18, l2=»         P2:=P2^.NEXTNB;«, l3=0x18}
0x0c6e…0c7b Line {l1=0x0b, l2=»       END;«, l3=0x0b}
0x0c7b…0c93 Line {l1=0x16, l2=»       PL(ORD(KN)):=M;«, l3=0x16}
0x0c93…0cab Line {l1=0x16, l2=»       P1:=P1^.NEXTKN;«, l3=0x16}
0x0cab…0cc0 Line {l1=0x13, l2=»       WRITELN(PL);«, l3=0x13}
0x0cc0…0ccb Line {l1=0x09, l2=»     END;«, l3=0x09}
0x0ccb…0cd9 Line {l1=0x0c, l2=»     PL:=PK;«, l3=0x0c}
0x0cd9…0ce4 Line {l1=0x09, l2=»     END;«, l3=0x09}
0x0ce4…0ce7 Line {l1=0x01, l2=» «, l3=0x01}
            […0x3…]
0x0cf0…0cf7 Line {l1=0x05, l2=» END.«, l3=0x05}
0x0cf7…0d00 00 00 63 63 63 63 63 63 63                                                                        ┆  ccccccc┆
0x0d00…0d20 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63   ┆cccccccccccccccccccccccccccccccc┆
            […0x35…]

Reduced view