Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs

Dashboard
Notifications
Mark all as read
Challenges

Evens or Odds - you know this one

+6
−0

Get ready for a comparatively dry question - this is intended to be one of the "the"s of the code-golfing dictionary.

Create a program which inputs a base 10 non-negative whole number (without leading 0s) and outputs something if the number is odd or something else if the number is even.

You MUST input through STDIN unless your language doesn't have input facilities, in which case you may make a function for the purpose.

The odd and even outputs can be whatever you want, so long as the output for a specific parity will stay the same no matter what number of that parity is inputted.

One of the outputs can be absolutely nothing (0 characters) so long as the other output isn't nothing - one or both of the outputs can be printed through STDERR as long as the erroring output is constant for its parity (doesn't change depending on what numbers of a parity you feed it).

Shortest code following the rules wins.

Why does this post require moderator attention?
You might want to add some details to your flag.
Why should this post be closed?

1 comment thread

Clarify input and output methods (2 comments)

13 answers

+5
−0

Python 3, 10 bytes

1 .__and__

Try it online!

Returns 1 for odd numbers and 0 for even numbers.

Two bytes shorter than the trivial lambda x:x%2 and one byte shorter than the equivalent magic function 2 .__rmod__.

Why does this post require moderator attention?
You might want to add some details to your flag.

1 comment thread

Useless comment (1 comment)
+5
−0

Regex, 8 bytes

[02468]$

Matches strings ending in one of 0, 2, 4, 6, 8. [13579]$ is equivalent but with opposite outputs.

Try it on Regex101!

Why does this post require moderator attention?
You might want to add some details to your flag.

1 comment thread

Link to try regex (1 comment)
+4
−0

JavaScript (Node.js), 6 bytes

n=>n%2

Try it online!

Basically does what you'd expect.

Why does this post require moderator attention?
You might want to add some details to your flag.

1 comment thread

You don't need to count the `f=`. (1 comment)
+4
−0

Scala -language:postfixOps, 2 bytes

1&

Try it online!

1 for odd, 0 for even.

Scala, 3 bytes

_%2

Try it online!

1 for odd, 0 for even.

Why does this post require moderator attention?
You might want to add some details to your flag.

0 comment threads

+4
−0

Japt, 1 byte

u

Japt, more like JABT (just another builtin) :P

Try it

Why does this post require moderator attention?
You might want to add some details to your flag.

1 comment thread

Or, alternatively, `v`. (1 comment)
+4
−0

Jelly, 1 byte

Try it online!

Builtin. Returns 0 for even and 1 for odd

Why does this post require moderator attention?
You might want to add some details to your flag.

0 comment threads

+2
−0

Mathematica, 4 bytes

OddQ

Not at all my code - this is the original post by Martin Ender. Prints True for odd inputs and False for even inputs.

Why does this post require moderator attention?
You might want to add some details to your flag.

0 comment threads

+1
−0

MAWP, 8 bytes

@!2P2WA:

Try it!

1 for odd and zero for even.

mawp doesn't have modulus, so it floor divides by 2, multiplies by 2 and subtracts from the input.

Why does this post require moderator attention?
You might want to add some details to your flag.

0 comment threads

+1
−0

Rockstar, 44 bytes

Outputs 1 for odd or 0 for even.

listen to N
let M be N/2
turn up M
say M*2-N

Try it here (Code will need to be pasted in)

Why does this post require moderator attention?
You might want to add some details to your flag.

0 comment threads

+1
−0

C (gcc), 20 bytes

f(a){puts("!"+a%2);}

Try it online!

Function solution. Prints ! in case of even numbers, otherwise just new line.

Why does this post require moderator attention?
You might want to add some details to your flag.

0 comment threads

+1
−0

Ruby, 8 bytes

->n{n%2}

Generic mod-in-a-lambda solution. Alternately, for 2.7+:

->{_1%2}

Try it online!

Why does this post require moderator attention?
You might want to add some details to your flag.

0 comment threads

+0
−0

Python 3, 51 25 bytes

n=int(input());print(n%2)

Try it online!

Golfed 26 bytes using the technique from my PHP answer.

Why does this post require moderator attention?
You might want to add some details to your flag.

0 comment threads

+0
−0

PHP, 36 bytes

<?php $x=(int)fgets(STDIN);echo$x%2;

Try it online!

Outputs 1 if odd and 0 if even.

Why does this post require moderator attention?
You might want to add some details to your flag.

0 comment threads

Sign up to answer this question »

This community is part of the Codidact network. We have other communities too — take a look!

You can also join us in chat!

Want to advertise this community? Use our templates!