chrislo-sourceclassifier 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (316) hide show
  1. data/Manifest +0 -312
  2. data/Rakefile +2 -2
  3. data/sourceclassifier.gemspec +6 -6
  4. metadata +4 -316
  5. data/sources/gcc/ackermann.gcc-2.gcc +0 -93
  6. data/sources/gcc/ackermann.gcc-3.gcc +0 -20
  7. data/sources/gcc/ary.gcc +0 -40
  8. data/sources/gcc/binarytrees.gcc +0 -136
  9. data/sources/gcc/binarytrees.gcc-2.gcc +0 -140
  10. data/sources/gcc/binarytrees.gcc-3.gcc +0 -134
  11. data/sources/gcc/chameneos.gcc +0 -117
  12. data/sources/gcc/chameneos.gcc-2.gcc +0 -134
  13. data/sources/gcc/chameneos.gcc-3.gcc +0 -120
  14. data/sources/gcc/chameneosredux.gcc +0 -306
  15. data/sources/gcc/echo.gcc +0 -144
  16. data/sources/gcc/except.gcc +0 -52
  17. data/sources/gcc/fannkuch.gcc +0 -105
  18. data/sources/gcc/fannkuch.gcc-2.gcc +0 -94
  19. data/sources/gcc/fasta.gcc +0 -158
  20. data/sources/gcc/fasta.gcc-2.gcc +0 -132
  21. data/sources/gcc/fasta.gcc-3.gcc +0 -145
  22. data/sources/gcc/fasta.gcc-4.gcc +0 -141
  23. data/sources/gcc/fibo.gcc +0 -20
  24. data/sources/gcc/harmonic.gcc +0 -22
  25. data/sources/gcc/hash.gcc +0 -31
  26. data/sources/gcc/hash2.gcc +0 -38
  27. data/sources/gcc/heapsort.gcc +0 -72
  28. data/sources/gcc/hello.gcc-2.gcc +0 -12
  29. data/sources/gcc/hello.gcc-3.gcc +0 -20
  30. data/sources/gcc/knucleotide.gcc +0 -173
  31. data/sources/gcc/knucleotide.gcc-2.gcc +0 -168
  32. data/sources/gcc/lists.gcc +0 -226
  33. data/sources/gcc/magicsquares.gcc +0 -378
  34. data/sources/gcc/mandelbrot.gcc +0 -84
  35. data/sources/gcc/mandelbrot.gcc-2.gcc +0 -63
  36. data/sources/gcc/mandelbrot.gcc-3.gcc +0 -91
  37. data/sources/gcc/mandelbrot.gcc-4.gcc +0 -78
  38. data/sources/gcc/matrix.gcc +0 -66
  39. data/sources/gcc/message.gcc-2.gcc +0 -72
  40. data/sources/gcc/message.gcc-3.gcc +0 -64
  41. data/sources/gcc/methcall.gcc +0 -89
  42. data/sources/gcc/moments.gcc +0 -120
  43. data/sources/gcc/nbody.gcc +0 -142
  44. data/sources/gcc/nbody.gcc-2.gcc +0 -143
  45. data/sources/gcc/nbody.gcc-3.gcc +0 -142
  46. data/sources/gcc/nestedloop.gcc +0 -25
  47. data/sources/gcc/nsieve.gcc +0 -35
  48. data/sources/gcc/nsievebits.gcc-2.gcc +0 -37
  49. data/sources/gcc/nsievebits.gcc-3.gcc +0 -53
  50. data/sources/gcc/objinst.gcc +0 -95
  51. data/sources/gcc/partialsums.gcc +0 -86
  52. data/sources/gcc/partialsums.gcc-3.gcc +0 -81
  53. data/sources/gcc/partialsums.gcc-4.gcc +0 -68
  54. data/sources/gcc/pidigits.gcc +0 -105
  55. data/sources/gcc/primes.gcc +0 -75
  56. data/sources/gcc/prodcons.gcc +0 -86
  57. data/sources/gcc/random.gcc +0 -29
  58. data/sources/gcc/raytracer.gcc +0 -125
  59. data/sources/gcc/raytracer.gcc-2.gcc +0 -181
  60. data/sources/gcc/recursive.gcc +0 -68
  61. data/sources/gcc/recursive.gcc-2.gcc +0 -55
  62. data/sources/gcc/regexdna.gcc-2.gcc +0 -126
  63. data/sources/gcc/regexmatch.gcc +0 -136
  64. data/sources/gcc/revcomp.gcc +0 -85
  65. data/sources/gcc/revcomp.gcc-2.gcc +0 -88
  66. data/sources/gcc/revcomp.gcc-4.gcc +0 -71
  67. data/sources/gcc/reversefile.gcc +0 -103
  68. data/sources/gcc/reversefile.gcc-2.gcc +0 -56
  69. data/sources/gcc/sieve.gcc +0 -34
  70. data/sources/gcc/spectralnorm.gcc +0 -54
  71. data/sources/gcc/spellcheck.gcc +0 -72
  72. data/sources/gcc/spellcheck.gcc-2.gcc +0 -61
  73. data/sources/gcc/strcat.gcc +0 -38
  74. data/sources/gcc/sumcol.gcc-2.gcc +0 -98
  75. data/sources/gcc/sumcol.gcc-3.gcc +0 -22
  76. data/sources/gcc/sumcol.gcc-4.gcc +0 -18
  77. data/sources/gcc/sumcol.gcc-5.gcc +0 -32
  78. data/sources/gcc/takfp.gcc +0 -23
  79. data/sources/gcc/tcp-stream.gcc +0 -122
  80. data/sources/gcc/tcpecho.gcc +0 -122
  81. data/sources/gcc/tcpecho.gcc-2.gcc +0 -136
  82. data/sources/gcc/tcprequest.gcc +0 -122
  83. data/sources/gcc/threadring.gcc +0 -73
  84. data/sources/gcc/wc.gcc +0 -52
  85. data/sources/gcc/wc.gcc-2.gcc +0 -40
  86. data/sources/gcc/wc.gcc-3.gcc +0 -46
  87. data/sources/gcc/wordfreq.gcc-2.gcc +0 -85
  88. data/sources/perl/ackermann.perl +0 -28
  89. data/sources/perl/ackermann.perl-2.perl +0 -25
  90. data/sources/perl/ackermann.perl-3.perl +0 -20
  91. data/sources/perl/ackermann.perl-4.perl +0 -18
  92. data/sources/perl/ary.perl +0 -25
  93. data/sources/perl/ary.perl-2.perl +0 -23
  94. data/sources/perl/binarytrees.perl +0 -66
  95. data/sources/perl/binarytrees.perl-2.perl +0 -71
  96. data/sources/perl/chameneos.perl +0 -67
  97. data/sources/perl/echo.perl +0 -81
  98. data/sources/perl/except.perl +0 -73
  99. data/sources/perl/fannkuch.perl +0 -44
  100. data/sources/perl/fannkuch.perl-2.perl +0 -38
  101. data/sources/perl/fasta.perl +0 -112
  102. data/sources/perl/fasta.perl-2.perl +0 -135
  103. data/sources/perl/fasta.perl-4.perl +0 -122
  104. data/sources/perl/fibo.perl +0 -15
  105. data/sources/perl/fibo.perl-2.perl +0 -0
  106. data/sources/perl/fibo.perl-3.perl +0 -0
  107. data/sources/perl/harmonic.perl +0 -7
  108. data/sources/perl/hash.perl +0 -23
  109. data/sources/perl/hash.perl-2.perl +0 -17
  110. data/sources/perl/hash.perl-3.perl +0 -24
  111. data/sources/perl/hash2.perl +0 -16
  112. data/sources/perl/heapsort.perl +0 -65
  113. data/sources/perl/heapsort.perl-2.perl +0 -0
  114. data/sources/perl/hello.perl +0 -5
  115. data/sources/perl/knucleotide.perl-2.perl +0 -30
  116. data/sources/perl/lists.perl +0 -48
  117. data/sources/perl/mandelbrot.perl-2.perl +0 -32
  118. data/sources/perl/matrix.perl +0 -59
  119. data/sources/perl/matrix.perl-2.perl +0 -0
  120. data/sources/perl/matrix.perl-3.perl +0 -0
  121. data/sources/perl/message.perl +0 -27
  122. data/sources/perl/methcall.perl +0 -66
  123. data/sources/perl/moments.perl +0 -44
  124. data/sources/perl/nbody.perl +0 -108
  125. data/sources/perl/nestedloop.perl +0 -28
  126. data/sources/perl/nsieve.perl-2.perl +0 -41
  127. data/sources/perl/nsieve.perl-4.perl +0 -43
  128. data/sources/perl/nsievebits.perl +0 -37
  129. data/sources/perl/objinst.perl +0 -73
  130. data/sources/perl/partialsums.perl-3.perl +0 -31
  131. data/sources/perl/pidigits.perl +0 -52
  132. data/sources/perl/pidigits.perl-2.perl +0 -47
  133. data/sources/perl/process.perl +0 -50
  134. data/sources/perl/prodcons.perl +0 -47
  135. data/sources/perl/random.perl-4.perl +0 -17
  136. data/sources/perl/recursive.perl-2.perl +0 -57
  137. data/sources/perl/regexdna.perl +0 -48
  138. data/sources/perl/regexdna.perl-2.perl +0 -43
  139. data/sources/perl/regexdna.perl-3.perl +0 -50
  140. data/sources/perl/regexdna.perl-4.perl +0 -49
  141. data/sources/perl/regexdna.perl-5.perl +0 -42
  142. data/sources/perl/regexdna.perl-6.perl +0 -43
  143. data/sources/perl/regexmatch.perl +0 -35
  144. data/sources/perl/revcomp.perl-2.perl +0 -34
  145. data/sources/perl/reversefile.perl +0 -8
  146. data/sources/perl/reversefile.perl-2.perl +0 -0
  147. data/sources/perl/reversefile.perl-3.perl +0 -0
  148. data/sources/perl/sieve.perl +0 -23
  149. data/sources/perl/spectralnorm.perl-2.perl +0 -54
  150. data/sources/perl/spellcheck.perl +0 -24
  151. data/sources/perl/strcat.perl +0 -13
  152. data/sources/perl/strcat.perl-2.perl +0 -0
  153. data/sources/perl/sumcol.perl +0 -8
  154. data/sources/perl/takfp.perl +0 -23
  155. data/sources/perl/takfp.perl-3.perl +0 -20
  156. data/sources/perl/tcpecho.perl +0 -61
  157. data/sources/perl/tcprequest.perl +0 -61
  158. data/sources/perl/tcpstream.perl +0 -61
  159. data/sources/perl/threadring.perl +0 -55
  160. data/sources/perl/threadring.perl-2.perl +0 -43
  161. data/sources/perl/wc.perl +0 -20
  162. data/sources/perl/wc.perl-2.perl +0 -14
  163. data/sources/perl/wordfreq.perl +0 -22
  164. data/sources/perl/wordfreq.perl-3.perl +0 -0
  165. data/sources/perl/wordfreq.perl3.perl +0 -0
  166. data/sources/python/ackermann.python +0 -21
  167. data/sources/python/ary.python +0 -19
  168. data/sources/python/binarytrees.python +0 -39
  169. data/sources/python/binarytrees.python-3.python +0 -44
  170. data/sources/python/chameneos.python-6.python +0 -73
  171. data/sources/python/chameneosredux.python +0 -126
  172. data/sources/python/chameneosredux.python-2.python +0 -122
  173. data/sources/python/dispatch.python +0 -176
  174. data/sources/python/dispatch.python-2.python +0 -136
  175. data/sources/python/echo.python +0 -64
  176. data/sources/python/except.python +0 -62
  177. data/sources/python/fannkuch.python +0 -50
  178. data/sources/python/fannkuch.python-2.python +0 -54
  179. data/sources/python/fasta.python-2.python +0 -79
  180. data/sources/python/fibo.python +0 -17
  181. data/sources/python/fibo.python-2.python +0 -0
  182. data/sources/python/fibo.python-3.python +0 -0
  183. data/sources/python/harmonic.python-2.python +0 -9
  184. data/sources/python/hash.python +0 -21
  185. data/sources/python/hash.python-2.python +0 -0
  186. data/sources/python/hash2.python +0 -30
  187. data/sources/python/heapsort.python-3.python +0 -66
  188. data/sources/python/hello.python +0 -5
  189. data/sources/python/implicitode.python +0 -231
  190. data/sources/python/knucleotide.python +0 -55
  191. data/sources/python/lists.python +0 -44
  192. data/sources/python/magicsquares.python +0 -145
  193. data/sources/python/mandelbrot.python +0 -44
  194. data/sources/python/mandelbrot.python-2.python +0 -35
  195. data/sources/python/mandelbrot.python-3.python +0 -46
  196. data/sources/python/matrix.python +0 -34
  197. data/sources/python/matrix.python-2.python +0 -23
  198. data/sources/python/message.python +0 -24
  199. data/sources/python/message.python-2.python +0 -20
  200. data/sources/python/message.python-3.python +0 -19
  201. data/sources/python/meteor.python +0 -210
  202. data/sources/python/meteor.python-2.python +0 -192
  203. data/sources/python/methcall.python +0 -51
  204. data/sources/python/moments.python +0 -65
  205. data/sources/python/nbody.python +0 -123
  206. data/sources/python/nbody.python-2.python +0 -120
  207. data/sources/python/nestedloop.python +0 -24
  208. data/sources/python/nsieve.python +0 -27
  209. data/sources/python/nsieve.python-2.python +0 -23
  210. data/sources/python/nsieve.python-4.python +0 -25
  211. data/sources/python/nsievebits.python +0 -27
  212. data/sources/python/nsievebits.python-2.python +0 -43
  213. data/sources/python/objinst.python +0 -53
  214. data/sources/python/partialsums.python +0 -37
  215. data/sources/python/partialsums.python-2.python +0 -35
  216. data/sources/python/partialsums.python-3.python +0 -48
  217. data/sources/python/pidigits.python +0 -38
  218. data/sources/python/pidigits.python-3.python +0 -63
  219. data/sources/python/pidigits.python-4.python +0 -24
  220. data/sources/python/process.python +0 -51
  221. data/sources/python/process.python-2.python +0 -133
  222. data/sources/python/prodcons.python +0 -51
  223. data/sources/python/prodcons.python-2.python +0 -0
  224. data/sources/python/random.python +0 -27
  225. data/sources/python/raytracer.python +0 -203
  226. data/sources/python/recursive.python +0 -35
  227. data/sources/python/regexdna.python +0 -39
  228. data/sources/python/regexdna.python-2.python +0 -34
  229. data/sources/python/regexmatch.python +0 -36
  230. data/sources/python/revcomp.python-3.python +0 -31
  231. data/sources/python/reversefile.python +0 -13
  232. data/sources/python/reversefile.python-2.python +0 -0
  233. data/sources/python/reversefile.python-3.python +0 -0
  234. data/sources/python/sieve.python +0 -50
  235. data/sources/python/spectralnorm.python-2.python +0 -36
  236. data/sources/python/spellcheck.python +0 -17
  237. data/sources/python/strcat.python +0 -35
  238. data/sources/python/strcat.python-2.python +0 -0
  239. data/sources/python/sumcol.python-2.python +0 -0
  240. data/sources/python/sumcol.python-3.python +0 -0
  241. data/sources/python/takfp.python +0 -19
  242. data/sources/python/tcpecho.python +0 -67
  243. data/sources/python/tcprequest.python +0 -67
  244. data/sources/python/tcpstream.python +0 -67
  245. data/sources/python/threadring.python +0 -47
  246. data/sources/python/threadring.python-2.python +0 -40
  247. data/sources/python/threadring.python-3.python +0 -34
  248. data/sources/python/wc.python-2.python +0 -19
  249. data/sources/python/wordfreq.python +0 -43
  250. data/sources/python/wordfreq.python-2.python +0 -0
  251. data/sources/python/wordfreq.python-3.python +0 -28
  252. data/sources/python/wordfreq.python-4.python +0 -38
  253. data/sources/python/wordfreq.python-5.python +0 -39
  254. data/sources/ruby/ackermann.ruby +0 -17
  255. data/sources/ruby/ackermann.ruby-5.ruby +0 -153
  256. data/sources/ruby/ary.ruby +0 -22
  257. data/sources/ruby/binarytrees.ruby-2.ruby +0 -55
  258. data/sources/ruby/chameneos.ruby-2.ruby +0 -71
  259. data/sources/ruby/dispatch.ruby +0 -114
  260. data/sources/ruby/echo.ruby +0 -41
  261. data/sources/ruby/except.ruby +0 -61
  262. data/sources/ruby/except.ruby-2.ruby +0 -61
  263. data/sources/ruby/fannkuch.ruby +0 -42
  264. data/sources/ruby/fasta.ruby +0 -81
  265. data/sources/ruby/fibo.ruby +0 -15
  266. data/sources/ruby/harmonic.ruby-2.ruby +0 -15
  267. data/sources/ruby/hash.ruby +0 -19
  268. data/sources/ruby/hash2.ruby +0 -23
  269. data/sources/ruby/heapsort.ruby +0 -55
  270. data/sources/ruby/hello.ruby +0 -6
  271. data/sources/ruby/knucleotide.ruby-2.ruby +0 -44
  272. data/sources/ruby/lists.ruby +0 -46
  273. data/sources/ruby/mandelbrot.ruby-3.ruby +0 -63
  274. data/sources/ruby/matrix.ruby +0 -40
  275. data/sources/ruby/matrix.ruby-2.ruby +0 -30
  276. data/sources/ruby/message.ruby +0 -29
  277. data/sources/ruby/message.ruby-2.ruby +0 -24
  278. data/sources/ruby/meteor.ruby +0 -386
  279. data/sources/ruby/meteor.ruby-2.ruby +0 -561
  280. data/sources/ruby/methcall.ruby +0 -58
  281. data/sources/ruby/methcall.ruby-2.ruby +0 -54
  282. data/sources/ruby/moments.ruby +0 -64
  283. data/sources/ruby/nbody.ruby-2.ruby +0 -145
  284. data/sources/ruby/nestedloop.ruby +0 -22
  285. data/sources/ruby/nsieve.ruby +0 -36
  286. data/sources/ruby/nsieve.ruby-2.ruby +0 -25
  287. data/sources/ruby/nsievebits.ruby-2.ruby +0 -42
  288. data/sources/ruby/objinst.ruby +0 -58
  289. data/sources/ruby/partialsums.ruby +0 -39
  290. data/sources/ruby/pidigits.ruby +0 -92
  291. data/sources/ruby/pidigits.ruby-2.ruby +0 -109
  292. data/sources/ruby/prodcons.ruby +0 -41
  293. data/sources/ruby/random.ruby +0 -17
  294. data/sources/ruby/recursive.ruby-2.ruby +0 -53
  295. data/sources/ruby/regexdna.ruby +0 -32
  296. data/sources/ruby/regexdna.ruby-2.ruby +0 -38
  297. data/sources/ruby/regexmatch.ruby +0 -33
  298. data/sources/ruby/revcomp.ruby +0 -28
  299. data/sources/ruby/reversefile.ruby +0 -7
  300. data/sources/ruby/sieve.ruby +0 -30
  301. data/sources/ruby/spectralnorm.ruby +0 -48
  302. data/sources/ruby/spellcheck.ruby +0 -18
  303. data/sources/ruby/spellcheck.ruby-2.ruby +0 -0
  304. data/sources/ruby/strcat.ruby +0 -12
  305. data/sources/ruby/strcat.ruby-2.ruby +0 -12
  306. data/sources/ruby/sumcol.ruby +0 -12
  307. data/sources/ruby/sumcol.ruby-2.ruby +0 -5
  308. data/sources/ruby/takfp.ruby +0 -15
  309. data/sources/ruby/tcpecho.ruby +0 -45
  310. data/sources/ruby/tcprequest.ruby +0 -45
  311. data/sources/ruby/tcpstream.ruby +0 -45
  312. data/sources/ruby/threadring.ruby +0 -61
  313. data/sources/ruby/threadring.ruby-2.ruby +0 -33
  314. data/sources/ruby/wc.ruby +0 -15
  315. data/sources/ruby/wordfreq.ruby +0 -17
  316. data/sources/ruby/wordfreq.ruby2.ruby +0 -0
@@ -1,65 +0,0 @@
1
- #!/usr/bin/python
2
- # $Id: moments.python,v 1.2 2004-11-30 07:10:04 bfulgham Exp $
3
- # http://shootout.alioth.debian.org/
4
- #
5
- # Updated by Antoine Pitrou
6
- # 1. Simple loops are often faster than 'reduce'.
7
- # 2. 'abs' function is referenced by a local variable. (Local variables
8
- # are optimized by the Python interpreter.
9
- # 3. Some loop invariants are lifted to tighten up the code.
10
-
11
- import sys, string, math, operator
12
-
13
- def main():
14
- sum = 0
15
- nums = []
16
- _abs = abs
17
-
18
- nums = [float(s) for s in sys.stdin.xreadlines()]
19
- for num in nums:
20
- sum += num
21
- # sum = reduce(operator.add, nums)
22
-
23
- n = len(nums)
24
- mean = sum/n
25
- average_deviation = 0
26
- standard_deviation = 0
27
- variance = 0
28
- skew = 0
29
- kurtosis = 0
30
-
31
- for num in nums:
32
- deviation = num - mean
33
- d2 = deviation**2
34
- average_deviation += _abs(deviation)
35
- variance += d2
36
- skew += deviation*d2
37
- kurtosis += d2**2
38
-
39
- average_deviation /= n
40
- variance /= (n - 1)
41
- standard_deviation = math.sqrt(variance)
42
-
43
- if variance > 0.0:
44
- skew /= (n * variance * standard_deviation)
45
- kurtosis = kurtosis/(n * variance * variance) - 3.0
46
-
47
- nums.sort()
48
- mid = n / 2
49
-
50
- if (n % 2) == 0:
51
- median = (nums[mid] + nums[mid-1])/2
52
- else:
53
- median = nums[mid]
54
-
55
- print "n: %d" % n
56
- print "median: %f" % median
57
- print "mean: %f" % mean
58
- print "average_deviation: %f" % average_deviation
59
- print "standard_deviation: %f" % standard_deviation
60
- print "variance: %f" % variance
61
- print "skew: %f" % skew
62
- print "kurtosis: %f" % kurtosis
63
-
64
- main()
65
-
@@ -1,123 +0,0 @@
1
- # The Computer Language Benchmarks Game
2
- # http://shootout.alioth.debian.org/
3
- #
4
- # contributed by Kevin Carson
5
- # modified by Tupteq
6
- # modified by Fredrik Johansson
7
-
8
- import sys
9
-
10
- pi = 3.14159265358979323
11
- solar_mass = 4 * pi * pi
12
- days_per_year = 365.24
13
-
14
-
15
- def advance(bodies, dt):
16
- bodies2 = bodies[1:]
17
- for b in bodies:
18
- for b2 in bodies2:
19
- dx = b[0] - b2[0]
20
- dy = b[1] - b2[1]
21
- dz = b[2] - b2[2]
22
- mag = dt * (dx*dx + dy*dy + dz*dz)**-1.5
23
- b_mass_x_mag = b[6] * mag
24
- b2_mass_x_mag = b2[6] * mag
25
-
26
- b[3] -= dx * b2_mass_x_mag
27
- b[4] -= dy * b2_mass_x_mag
28
- b[5] -= dz * b2_mass_x_mag
29
- b2[3] += dx * b_mass_x_mag
30
- b2[4] += dy * b_mass_x_mag
31
- b2[5] += dz * b_mass_x_mag
32
- del bodies2[:1]
33
-
34
- for b in bodies:
35
- b[0] += dt * b[3]
36
- b[1] += dt * b[4]
37
- b[2] += dt * b[5]
38
-
39
- def energy(bodies):
40
- e = 0.0
41
- bodies2 = bodies[1:]
42
- for b in bodies:
43
- e += 0.5 * b[6] * (b[3]*b[3] + b[4]*b[4] + b[5]*b[5])
44
- for b2 in bodies2:
45
- dx = b[0] - b2[0]
46
- dy = b[1] - b2[1]
47
- dz = b[2] - b2[2]
48
- distance = (dx*dx + dy*dy + dz*dz)**0.5
49
- e -= (b[6] * b2[6]) / distance
50
- del bodies2[:1]
51
-
52
- return e
53
-
54
- def offset_momentum(bodies):
55
- global sun
56
- px = py = pz = 0.0
57
-
58
- for b in bodies:
59
- px += b[3] * b[6]
60
- py += b[4] * b[6]
61
- pz += b[5] * b[6]
62
-
63
- sun[3] = - px / solar_mass
64
- sun[4] = - py / solar_mass
65
- sun[5] = - pz / solar_mass
66
-
67
- sun = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, solar_mass]
68
- jupiter = [
69
- 4.84143144246472090e+00,
70
- -1.16032004402742839e+00,
71
- -1.03622044471123109e-01,
72
- 1.66007664274403694e-03 * days_per_year,
73
- 7.69901118419740425e-03 * days_per_year,
74
- -6.90460016972063023e-05 * days_per_year,
75
- 9.54791938424326609e-04 * solar_mass]
76
-
77
- saturn = [
78
- 8.34336671824457987e+00,
79
- 4.12479856412430479e+00,
80
- -4.03523417114321381e-01,
81
- -2.76742510726862411e-03 * days_per_year,
82
- 4.99852801234917238e-03 * days_per_year,
83
- 2.30417297573763929e-05 * days_per_year,
84
- 2.85885980666130812e-04 * solar_mass]
85
-
86
- uranus = [
87
- 1.28943695621391310e+01,
88
- -1.51111514016986312e+01,
89
- -2.23307578892655734e-01,
90
- 2.96460137564761618e-03 * days_per_year,
91
- 2.37847173959480950e-03 * days_per_year,
92
- -2.96589568540237556e-05 * days_per_year,
93
- 4.36624404335156298e-05 * solar_mass]
94
-
95
- neptune = [
96
- 1.53796971148509165e+01,
97
- -2.59193146099879641e+01,
98
- 1.79258772950371181e-01,
99
- 2.68067772490389322e-03 * days_per_year,
100
- 1.62824170038242295e-03 * days_per_year,
101
- -9.51592254519715870e-05 * days_per_year,
102
- 5.15138902046611451e-05 * solar_mass]
103
-
104
-
105
- def main():
106
- try:
107
- n = int(sys.argv[1])
108
- except:
109
- print "Usage: %s <N>" % sys.argv[0]
110
- sys.exit(2)
111
-
112
- bodies = [sun, jupiter, saturn, uranus, neptune]
113
- offset_momentum(bodies)
114
-
115
- print "%.9f" % energy(bodies)
116
-
117
- for i in xrange(n):
118
- advance(bodies, 0.01)
119
-
120
- print "%.9f" % energy(bodies)
121
-
122
- if __name__ == '__main__':
123
- main()
@@ -1,120 +0,0 @@
1
- # The Computer Language Benchmarks Game
2
- # http://shootout.alioth.debian.org/
3
- #
4
- # contributed by Kevin Carson
5
- # modified by Tupteq
6
- # modified by Fredrik Johansson
7
- # modified by Tupteq (again)
8
-
9
- import sys
10
-
11
- pi = 3.14159265358979323
12
- solar_mass = 4 * pi * pi
13
- days_per_year = 365.24
14
-
15
-
16
- def advance(bodies, dt, n):
17
- # Create all possible pairs first
18
- pairs = [(b, b2) for i, b in enumerate(bodies) for b2 in bodies[i+1:]]
19
- for i in xrange(n):
20
- for b, b2 in pairs:
21
- dx = b[0] - b2[0]
22
- dy = b[1] - b2[1]
23
- dz = b[2] - b2[2]
24
-
25
- mag = dt * (dx*dx + dy*dy + dz*dz)**-1.5
26
- b_mm = b[6] * mag
27
- b2_mm = b2[6] * mag
28
-
29
- b[3] -= dx * b2_mm
30
- b[4] -= dy * b2_mm
31
- b[5] -= dz * b2_mm
32
- b2[3] += dx * b_mm
33
- b2[4] += dy * b_mm
34
- b2[5] += dz * b_mm
35
-
36
- for b in bodies:
37
- b[0] += dt * b[3]
38
- b[1] += dt * b[4]
39
- b[2] += dt * b[5]
40
-
41
-
42
- def energy(bodies):
43
- e = 0.0
44
- bodies2 = bodies[1:]
45
- for b in bodies:
46
- e += 0.5 * b[6] * (b[3]*b[3] + b[4]*b[4] + b[5]*b[5])
47
- for b2 in bodies2:
48
- dx = b[0] - b2[0]
49
- dy = b[1] - b2[1]
50
- dz = b[2] - b2[2]
51
- distance = (dx*dx + dy*dy + dz*dz)**0.5
52
- e -= (b[6] * b2[6]) / distance
53
- del bodies2[:1]
54
-
55
- return e
56
-
57
-
58
- def offset_momentum(bodies):
59
- global sun
60
- px = py = pz = 0.0
61
-
62
- for b in bodies:
63
- px -= b[3] * b[6]
64
- py -= b[4] * b[6]
65
- pz -= b[5] * b[6]
66
-
67
- sun[3] = px / solar_mass
68
- sun[4] = py / solar_mass
69
- sun[5] = pz / solar_mass
70
-
71
-
72
- sun = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, solar_mass]
73
-
74
- jupiter = [
75
- 4.84143144246472090e+00,
76
- -1.16032004402742839e+00,
77
- -1.03622044471123109e-01,
78
- 1.66007664274403694e-03 * days_per_year,
79
- 7.69901118419740425e-03 * days_per_year,
80
- -6.90460016972063023e-05 * days_per_year,
81
- 9.54791938424326609e-04 * solar_mass]
82
-
83
- saturn = [
84
- 8.34336671824457987e+00,
85
- 4.12479856412430479e+00,
86
- -4.03523417114321381e-01,
87
- -2.76742510726862411e-03 * days_per_year,
88
- 4.99852801234917238e-03 * days_per_year,
89
- 2.30417297573763929e-05 * days_per_year,
90
- 2.85885980666130812e-04 * solar_mass]
91
-
92
- uranus = [
93
- 1.28943695621391310e+01,
94
- -1.51111514016986312e+01,
95
- -2.23307578892655734e-01,
96
- 2.96460137564761618e-03 * days_per_year,
97
- 2.37847173959480950e-03 * days_per_year,
98
- -2.96589568540237556e-05 * days_per_year,
99
- 4.36624404335156298e-05 * solar_mass]
100
-
101
- neptune = [
102
- 1.53796971148509165e+01,
103
- -2.59193146099879641e+01,
104
- 1.79258772950371181e-01,
105
- 2.68067772490389322e-03 * days_per_year,
106
- 1.62824170038242295e-03 * days_per_year,
107
- -9.51592254519715870e-05 * days_per_year,
108
- 5.15138902046611451e-05 * solar_mass]
109
-
110
-
111
- def main():
112
- n = int(sys.argv[1])
113
- bodies = [sun, jupiter, saturn, uranus, neptune]
114
- offset_momentum(bodies)
115
- print "%.9f" % energy(bodies)
116
- advance(bodies, 0.01, n)
117
- print "%.9f" % energy(bodies)
118
-
119
-
120
- main()
@@ -1,24 +0,0 @@
1
- #!/usr/bin/python
2
- # $Id: nestedloop.python,v 1.1.1.1 2004-05-19 18:10:57 bfulgham Exp $
3
- # http://www.bagley.org/~doug/shootout/
4
- # with help from Mark Baker
5
-
6
- import sys
7
-
8
- def main():
9
- x = 0
10
- iter = int(sys.argv[1])
11
- if iter < 1:
12
- iter = 1
13
-
14
- i_r = range(iter)
15
- for a in i_r:
16
- for b in i_r:
17
- for c in i_r:
18
- for d in i_r:
19
- for e in i_r:
20
- for f in i_r:
21
- x += 1
22
- print x
23
-
24
- main()
@@ -1,27 +0,0 @@
1
- # The Computer Language Benchmarks Game
2
- # http://shootout.alioth.debian.org/
3
- # Written by Nate Atkinson, 2008-4-4
4
- # Based on code by Dima Dorfman, Heinrich Acker, Dani Nanz
5
-
6
- import sys
7
-
8
- N = int(sys.argv[1])
9
- M = ((2 ** N) * 10000)
10
- MP = M // 2
11
- BL = [False, False] + ([True] * (M - 1))
12
- for I, IP in enumerate(BL):
13
- if IP and (I <= MP):
14
- BL[I + I::I] = [False] * ((M - I) // I)
15
-
16
- OL = []
17
- a = 0
18
- c = 0
19
- for x in range(N - 2, N + 1):
20
- b = (1<< x) * 10000
21
- c += sum(BL[a:b])
22
- OL.append((b, c))
23
- a = b
24
-
25
- OL.reverse()
26
- for x, y in OL:
27
- print "Primes up to %8d %8d" %(x, y)
@@ -1,23 +0,0 @@
1
- # The Computer Language Benchmarks Game
2
- # http://shootout.alioth.debian.org/
3
- # Written by Nate Atkinson, 2007-12-19
4
- # Based on code by Dima Dorfman, Heinrich Acker, Dani Nanz
5
-
6
- def sieve(M):
7
- PC = 0
8
- MP = M // 2
9
- BL = [False, False] + ([True] * (M - 1))
10
- for I, IP in enumerate(BL):
11
- if IP:
12
- PC += 1
13
- if(I <= MP):
14
- BL[I + I::I] = [False] * ((M - I) // I)
15
- print "Primes up to %8d %8d" %(M, PC)
16
-
17
-
18
-
19
- import sys
20
-
21
- N = int(sys.argv[1])
22
- ML = [((2 ** N) * 10000), ((2 ** (N - 1)) * 10000), ((2 ** (N - 2)) * 10000)]
23
- map(sieve, ML)
@@ -1,25 +0,0 @@
1
- # The Computer Language Benchmarks Game
2
- # http://shootout.alioth.debian.org/
3
- # Written by Dima Dorfman, 2004
4
-
5
- # modified by Heinrich Acker
6
- # modified by Dani Nanz 2007-10-03
7
-
8
- import sys
9
- from itertools import count, islice, izip
10
-
11
-
12
- def nsieve(m, c=0):
13
-
14
- a = [True] * (m + 1)
15
- iu = m // 2 # faster but not compliant: iu = int(m ** 0.5)
16
- for i, x in izip(count(2), islice(a, 2, None)):
17
- if x:
18
- c += 1
19
- if i <= iu:
20
- a[i + i :: i] = (False, ) * ((m - i) // i)
21
- print 'Primes up to %8d %8d' % (m, c)
22
-
23
-
24
- for k in 0, 1, 2:
25
- nsieve((1 << (int(sys.argv[1]) - k)) * 10000)
@@ -1,27 +0,0 @@
1
- # The Computer Language Benchmarks Game
2
- # http://shootout.alioth.debian.org/
3
- #
4
- # contributed by Kevin Carson
5
- # optimized by Giovanni Bajo
6
- # modified by Heinrich Acker
7
-
8
- import sys, itertools
9
-
10
- def primes_in_range(M):
11
- bits = [0xFF]*((M + 7) // 8)
12
- set_bits = [1 << (j+2 & 7) for j in range(8)]
13
- unset_bits = [~(1 << j) for j in range(8)]
14
-
15
- count = 0
16
- for i, sb in itertools.izip(xrange(2, M), itertools.cycle(set_bits)):
17
- if bits[i>>3] & sb:
18
- for j in xrange(i+i, M, i):
19
- bits[j>>3] &= unset_bits[j&7]
20
- count += 1
21
-
22
- print "Primes up to %8u %8u" % (M, count)
23
-
24
- N = int(sys.argv[1])
25
- for j in range(3):
26
- M = (1 << N-j) * 10000
27
- primes_in_range(M)
@@ -1,43 +0,0 @@
1
- # The Computer Language Shootout Benchmarks
2
- # http://shootout.alioth.debian.org/
3
- #
4
- # contributed by Kevin Carson (Python 2.4 or greater required)
5
- # optimized by Giovanni Bajo
6
-
7
- import sys
8
-
9
- def primes_in_range(M) :
10
- bits = [0xFF]*((M + 7) // 8)
11
- set_bits = [1 << i for i in range(8)]
12
- unset_bits = [~(1 << i) for i in range(8)]
13
-
14
- count = 0
15
- for i in xrange(2, M) :
16
- if bits[i>>3] & set_bits[i&7]:
17
- for j in xrange(i*2, M, i):
18
- bits[j>>3] &= unset_bits[j&7]
19
- count += 1
20
-
21
- return count
22
-
23
- def Usage() :
24
- print "Usage: %s <N >= 2>" % sys.argv[0]
25
-
26
-
27
- def main() :
28
- if len(sys.argv) == 2 :
29
- N = int(sys.argv[1])
30
- if N < 2 :
31
- Usage()
32
- return
33
- else :
34
- Usage()
35
- return
36
-
37
- for i in xrange(0,3) :
38
- M = (1 << (N - i)) * 10000
39
- count = primes_in_range(M)
40
- print "Primes up to %8u %8u" % (M, count)
41
-
42
- main()
43
-