Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
30
Task/Hamming-numbers/Bc/hamming-numbers.bc
Normal file
30
Task/Hamming-numbers/Bc/hamming-numbers.bc
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
cat hamming_numbers.bc
|
||||
define min(x,y) {
|
||||
if (x < y) {
|
||||
return x
|
||||
} else {
|
||||
return y
|
||||
}
|
||||
}
|
||||
define hamming(limit) {
|
||||
i = 0
|
||||
j = 0
|
||||
k = 0
|
||||
h[0] = 1
|
||||
x2 = 2
|
||||
x3 = 3
|
||||
x5 = 5
|
||||
for (n=1; n<=limit; n++) {
|
||||
h[n] = min(x2,min(x3,x5))
|
||||
if (h[n] == x2) { x2 = 2 * h[++i] }
|
||||
if (h[n] == x3) { x3 = 3 * h[++j] }
|
||||
if (h[n] == x5) { x5 = 5 * h[++k] }
|
||||
}
|
||||
return (h[limit-1])
|
||||
}
|
||||
for (lab=1; lab<=20; lab++) {
|
||||
hamming(lab)
|
||||
}
|
||||
hamming(1691)
|
||||
hamming(1000000)
|
||||
quit
|
||||
Loading…
Add table
Add a link
Reference in a new issue