Even or odd: Difference between revisions
m
→{{header|Binary Lambda Calculus}}
(Jakt) |
|||
(13 intermediate revisions by 10 users not shown) | |||
Line 382:
=={{header|Agda}}==
<syntaxhighlight lang="agda">
module EvenOrOdd where
open import Data.Bool using (Bool; false; true)
open import Data.Nat using (ℕ; zero; suc)
even : ℕ → Bool
odd : ℕ → Bool
Line 389 ⟶ 395:
odd zero = false
odd (suc n) = even n
</syntaxhighlight>
=={{header|Aime}}==
Line 886 ⟶ 893:
==={{header|Minimal BASIC}}===
{{works with|IS-BASIC}}
<syntaxhighlight lang="gwbasic">10 REM Even or odd
20 PRINT "Enter an integer number";
Line 1,245 ⟶ 1,253:
Outputs E if even, O if odd.
=={{header|Binary Lambda Calculus}}==
In lambda calculus, the oddness of a given church numeral n can be computed as n applications of <code>not</code> to <code>false</code>: <code>\n. n (\b\x\y. b y x) (\x\y.y)</code>, which in BLC is
<pre>00 01 01 10 0000000101111010110 000010</pre>
To compute the evenness, one need only replace <code>false</code> by <code>true</code>, i.e. replace the final 0 bit by 10.
=={{header|BQN}}==
Line 1,758 ⟶ 1,773:
Modulo:
<syntaxhighlight lang="delphi">var isOdd := (i mod 2)=1;</syntaxhighlight>
=={{header|EasyLang}}==
<syntaxhighlight lang="easylang">
a = 13
if a mod 2 = 0
print a & " is even"
else
print a & " is odd"
.
</syntaxhighlight>
=={{header|EDSAC order code}}==
Line 2,176 ⟶ 2,201:
=={{header|Fōrmulæ}}==
{{FormulaeEntry|page=https://formulae.org/?script=examples/Even_or_odd}}
'''Solutions'''
'''Case 1.''' Intrinsic expressions:
[[File:Fōrmulæ - Even or odd 01.png]]
[[File:Fōrmulæ - Even or odd 02.png]]
'''Case 2.''' Using the Divides and DoesNotDivide expressions:
[[File:Fōrmulæ - Even or odd 03.png]]
[[File:Fōrmulæ - Even or odd 04.png]]
'''Case 3.''' Using modular congruences
[[File:Fōrmulæ - Even or odd 05.png]]
[[File:Fōrmulæ - Even or odd 06.png]]
'''Case 4.''' Using bitwise operations
[[File:Fōrmulæ - Even or odd 07.png]]
[[File:Fōrmulæ - Even or odd 08.png]]
'''Case 5.''' Using IsRational
[[File:Fōrmulæ - Even or odd 09.png]]
[[File:Fōrmulæ - Even or odd 10.png]]
=={{header|GAP}}==
Line 2,325 ⟶ 2,379:
return n%2 = 0
end</syntaxhighlight>
=={{header|Insitux}}==
Exactly the same as [[Even_or_odd#Clojure|Clojure]], these are built-in predicates.
<syntaxhighlight lang="insitux">(if (even? some-var) (do-even-stuff))
(if (odd? some-var) (do-odd-stuff))</syntaxhighlight>
=={{header|J}}==
Line 2,349 ⟶ 2,408:
=={{header|Jakt}}==
<syntaxhighlight lang="jakt">
fn is_even<T>(anon n: T) -> bool => 0 == (n & 1)
fn is_odd<T>(anon n: T) -> bool => 0 != (n & 1)
fn main() {
Line 4,136 ⟶ 4,195:
return true
}</syntaxhighlight>
=={{header|Swift}}==
<syntaxhighlight lang="swift">
// Swift has Int.isMultiple(of:Int) -> Bool
var isEven: (_:Int) -> Bool = {$0.isMultiple(of: 2)}
</syntaxhighlight>
=={{header|Symsyn}}==
Line 4,163 ⟶ 4,228:
49:1,0
</pre>
=={{header|TI-57}}==
This routine returns the remainder of the division by 2 of the number in the display register. It is therefore a kind of is_odd(x) function.
Lbl 9
/
2
-
CE
Int
=
×
2
=
INV SBR
=={{header|TUSCRIPT}}==
Line 4,305 ⟶ 4,384:
=={{header|Wren}}==
{{libheader|Wren-fmt}}
<syntaxhighlight lang="
var isEven1 = Fn.new { |i| i & 1 == 0 }
|