|
|
1.1 root 1: INTEGER FUNCTION EXCH(J1, J2, DSA, LDSA, HASH, LHASH, OFFSET)
2: INTEGER DSA(LDSA), HASH(LHASH), OFFSET
3: INTEGER OUTUT, SYMLEN, OUTUT2, OUTUT3, OUTUT4
4: COMMON /PARAMS/ INUT, OUTUT, NOCHAR, SYMLEN, OUTUT2, OUTUT3,
5: * OUTUT4
6: C
7: C DSA(HASH(J1)+OFFSET) CONTAINS ELE TO BE COMPARED
8: C DSA(HASH(J2)+OFFSET) CONTAINS ELE TO BE COMPARED
9: C
10: JJ1 = HASH(J1) + OFFSET
11: JJ2 = HASH(J2) + OFFSET
12: DO 40 I=1,SYMLEN
13: K1 = JJ1 + I - 1
14: K2 = JJ2 + I - 1
15: IF (DSA(K1)) 10, 20, 20
16: 10 IF (DSA(K2)) 30, 50, 50
17: 20 IF (DSA(K2)) 70, 30, 30
18: 30 IF (DSA(K1)-DSA(K2)) 70, 40, 50
19: 40 CONTINUE
20: C
21: C COMPARISON SHOWS ELEMENTS IN PROPER ORDER
22: C
23: 50 EXCH = 0
24: 60 RETURN
25: C
26: C COMPARISON SHOWS NEED FOR EXCHANGE
27: C
28: 70 I = HASH(J1)
29: HASH(J1) = HASH(J2)
30: HASH(J2) = I
31: EXCH = -1
32: GO TO 60
33: END
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.