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