Data update
This commit is contained in:
parent
ed705008a8
commit
0df55f9f24
2196 changed files with 32999 additions and 3075 deletions
|
|
@ -0,0 +1,20 @@
|
|||
func lagarias n .
|
||||
if n < 0
|
||||
return -lagarias -n
|
||||
.
|
||||
if n = 0 or n = 1
|
||||
return 0
|
||||
.
|
||||
f = 2
|
||||
while n mod f <> 0
|
||||
f += 1
|
||||
.
|
||||
q = n / f
|
||||
if q = 1
|
||||
return 1
|
||||
.
|
||||
return q * lagarias f + f * lagarias q
|
||||
.
|
||||
for n = -99 to 100
|
||||
write lagarias n & " "
|
||||
.
|
||||
37
Task/Arithmetic-derivative/Scala/arithmetic-derivative.scala
Normal file
37
Task/Arithmetic-derivative/Scala/arithmetic-derivative.scala
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
import java.math.BigInteger
|
||||
|
||||
object ArithmeticDerivative extends App {
|
||||
|
||||
println("Arithmetic derivatives for -99 to 100 inclusive:")
|
||||
for {
|
||||
n <- -99 to 100
|
||||
column = n + 100
|
||||
} print(f"${derivative(BigInteger.valueOf(n))}%4d${if (column % 10 == 0) "\n" else " "}")
|
||||
|
||||
println()
|
||||
|
||||
val seven = BigInteger.valueOf(7)
|
||||
for (power <- 1 to 20) {
|
||||
println(f"D(10^$power%d) / 7 = ${derivative(BigInteger.TEN.pow(power)).divide(seven)}")
|
||||
}
|
||||
|
||||
def derivative(aNumber: BigInteger): BigInteger = {
|
||||
if (aNumber.signum == -1) {
|
||||
return derivative(aNumber.negate()).negate()
|
||||
}
|
||||
if (aNumber == BigInteger.ZERO || aNumber == BigInteger.ONE) {
|
||||
return BigInteger.ZERO
|
||||
}
|
||||
|
||||
var divisor = BigInteger.TWO
|
||||
while (divisor.multiply(divisor).compareTo(aNumber) <= 0) {
|
||||
if (aNumber.mod(divisor).signum == 0) {
|
||||
val quotient = aNumber.divide(divisor)
|
||||
return quotient.multiply(derivative(divisor)).add(divisor.multiply(derivative(quotient)))
|
||||
}
|
||||
divisor = divisor.add(BigInteger.ONE)
|
||||
}
|
||||
BigInteger.ONE
|
||||
}
|
||||
|
||||
}
|
||||
28
Task/Arithmetic-derivative/XPL0/arithmetic-derivative.xpl0
Normal file
28
Task/Arithmetic-derivative/XPL0/arithmetic-derivative.xpl0
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
function integer Lagarias (N); \Lagarias arithmetic derivative
|
||||
integer N;
|
||||
integer F, Q;
|
||||
|
||||
function integer SmallPF (J, K); \Smallest prime factor
|
||||
integer J, K;
|
||||
return if rem(J/K) = 0 then K else SmallPF(J, K+1);
|
||||
|
||||
begin
|
||||
if N < 0
|
||||
then return -Lagarias (-N)
|
||||
else if N = 0 or N = 1
|
||||
then return 0
|
||||
else begin
|
||||
F := SmallPF (N, 2); Q := N / F;
|
||||
return if Q = 1
|
||||
then 1
|
||||
else Q * Lagarias (F) + F * Lagarias (Q)
|
||||
end;
|
||||
end \Lagarias\ ;
|
||||
|
||||
integer N;
|
||||
begin
|
||||
for N:= -99 to 100 do begin
|
||||
IntOut(0, Lagarias(N) );
|
||||
if rem(N/10) = 0 then CrLf(0) else ChOut(0, 9\tab\);
|
||||
end;
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue