Jacobsthal numbers: Difference between revisions

Content added Content deleted
m (→‎{{header|Python}}: Simplified definition of a function over a tuple)
No edit summary
Line 2,374: Line 2,374:
First 20 Jacobsthal primes:
First 20 Jacobsthal primes:
[3, 5, 11, 43, 683, 2731, 43691, 174763, 2796203, 715827883, 2932031007403, 768614336404564651, 201487636602438195784363, 845100400152152934331135470251, 56713727820156410577229101238628035243, 62357403192785191176690552862561408838653121833643, 1046183622564446793972631570534611069350392574077339085483, 267823007376498379256993682056860433753700498963798805883563, 5562466239377370006237035693149875298444543026970449921737087520370363869220418099018130434731, 95562442332919646317117537304253622533190207882011713489066201641121786503686867002917439712921903606443]
[3, 5, 11, 43, 683, 2731, 43691, 174763, 2796203, 715827883, 2932031007403, 768614336404564651, 201487636602438195784363, 845100400152152934331135470251, 56713727820156410577229101238628035243, 62357403192785191176690552862561408838653121833643, 1046183622564446793972631570534611069350392574077339085483, 267823007376498379256993682056860433753700498963798805883563, 5562466239377370006237035693149875298444543026970449921737087520370363869220418099018130434731, 95562442332919646317117537304253622533190207882011713489066201641121786503686867002917439712921903606443]
</pre>

=={{header|Vlang}}==
{{trans|go}}
{{incomplete|Vlang|Probably Prime section isn't implemented yet (This is in development)}}
<lang vlang>import math.big

fn jacobsthal(n u32) big.Integer {
mut t := big.one_int
t=t.lshift(n)
mut s := big.one_int
if n%2 != 0 {
s=s.neg()
}
t -= s
return t/big.integer_from_int(3)
}
fn jacobsthal_lucas(n u32) big.Integer {
mut t := big.one_int
t=t.lshift(n)
mut a := big.one_int
if n%2 != 0 {
a=a.neg()
}
return t+a
}
fn main() {
mut jac := []big.Integer{len: 30}
println("First 30 Jacobsthal numbers:")
for i := u32(0); i < 30; i++ {
jac[i] = jacobsthal(i)
print("${jac[i]:9} ")
if (i+1)%5 == 0 {
println('')
}
}
println("\nFirst 30 Jacobsthal-Lucas numbers:")
for i := u32(0); i < 30; i++ {
print("${jacobsthal_lucas(i):9} ")
if (i+1)%5 == 0 {
println('')
}
}
println("\nFirst 20 Jacobsthal oblong numbers:")
for i := u32(0); i < 20; i++ {
print("${jac[i]*jac[i+1]:11} ")
if (i+1)%5 == 0 {
println('')
}
}
/*println("\nFirst 20 Jacobsthal primes:")
for n, count := u32(0), 0; count < 20; n++ {
j := jacobsthal(n)
if j.probably_prime(10) {
println(j)
count++
}
}*/
}</lang>

{{out}}
<pre>
First 30 Jacobsthal numbers:
0 1 1 3 5
11 21 43 85 171
341 683 1,365 2,731 5,461
10,923 21,845 43,691 87,381 174,763
349,525 699,051 1,398,101 2,796,203 5,592,405
11,184,811 22,369,621 44,739,243 89,478,485 178,956,971

First 30 Jacobsthal-Lucas numbers:
2 1 5 7 17
31 65 127 257 511
1,025 2,047 4,097 8,191 16,385
32,767 65,537 131,071 262,145 524,287
1,048,577 2,097,151 4,194,305 8,388,607 16,777,217
33,554,431 67,108,865 134,217,727 268,435,457 536,870,911

First 20 Jacobsthal oblong numbers:
0 1 3 15 55
231 903 3,655 14,535 58,311
232,903 932,295 3,727,815 14,913,991 59,650,503
238,612,935 954,429,895 3,817,763,271 15,270,965,703 61,084,037,575

</pre>
</pre>