Abundant odd numbers: Difference between revisions

(Add Swift)
Line 349:
First abundant odd number > 1 000 000 000:
1000000575 proper divisor sum: 1083561009
</pre>
=={{header|AWK}}==
<lang AWK>
# syntax: GAWK -f ABUNDANT_ODD_NUMBERS.AWK
# converted from C
BEGIN {
print(" index number sum")
fmt = "%8s %10d %10d\n"
n = 1
for (c=0; c<25; n+=2) {
if (n < sum_proper_divisors(n)) {
printf(fmt,++c,n,sum)
}
}
for (; c<1000; n+=2) {
if (n < sum_proper_divisors(n)) {
c++
}
}
printf(fmt,1000,n-2,sum)
for (n=1000000001; ; n+=2) {
if (n < sum_proper_divisors(n)) {
break
}
}
printf(fmt,"1st > 1B",n,sum)
exit(0)
}
function sum_proper_divisors(n, j) {
sum = 1
for (i=3; i<sqrt(n)+1; i+=2) {
if (n % i == 0) {
sum += i + (i == (j = n / i) ? 0 : j)
}
}
return(sum)
}
</lang>
{{out}}
<pre>
index number sum
1 945 975
2 1575 1649
3 2205 2241
4 2835 2973
5 3465 4023
6 4095 4641
7 4725 5195
8 5355 5877
9 5775 6129
10 5985 6495
11 6435 6669
12 6615 7065
13 6825 7063
14 7245 7731
15 7425 7455
16 7875 8349
17 8085 8331
18 8415 8433
19 8505 8967
20 8925 8931
21 9135 9585
22 9555 9597
23 9765 10203
24 10395 12645
25 11025 11946
1000 492975 519361
1st > 1B 1000000575 1083561009
</pre>
 
477

edits