|
|
1.1 root 1: c benchmark program number 7
2:
3: c statistics
4:
5: common /a/ array(10)
6: integer array
7: c data array/500, 1000, 2000, 4000, 100, 200, 400, 800, 1600, 3200/
8:
9: do 1 i = 1, 30000
10: 1 call stat(10)
11: end
12:
13: subroutine stat(nel)
14: common /a/ arr(10)
15: integer sum,mean,arr
16: integer gtmean
17:
18: sum = 0
19: do 2 i=1,nel
20: 2 sum = sum + arr(i)
21: mean = gtmean(nel,sum)
22: call getmed(nel,sum)
23: end
24:
25: integer function gtmean(nel,sum)
26: common /a/ arr(10)
27: integer sum,arr
28:
29: mean = 0
30: do 3 i=1,nel
31: 3 mean = mean + arr(i) * i
32: gtmean = mean / sum
33: return
34: end
35:
36: subroutine getmed(nel,sum)
37: common /a/ arr(10)
38: integer sum,arr
39: integer partsm
40:
41: partsm = 0
42: do 4 i=1,nel
43: partsm = partsm + arr(i)
44: if(partsm .gt. rshift(sum,2))goto 5
45: 4 continue
46: 5 return
47: end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.