Can you find a way to make:

$0\ 0 \ 0 \ 0 = 8$

by adding any operations or symbols? You can use only these symbols:

$+,\ -,\ *,\ !,\ /,\ \hat\, ,\ ()$.

It is limited to this list, and concatenation is also allowed. You cannot add other numbers to the equation.

  • 38
    Just put a slash over the equal sign! – Yout Ried Sep 7 at 0:40
  • 12
    @YoutRied: standard loophole: neither funny nor creative. It's usually the first answer on any math puzzle. – Thomas Weller Sep 7 at 18:40
  • 2
    Are we allowed to move anything, or is it insert only? – ctrl-alt-delor Sep 7 at 19:33
  • 2
    Are you allowed to concatenate operators? (e.g !!, **, --, and ++) – Ole Tange Sep 9 at 1:09
  • 1
    @OleTange The accepted answer does concatenate operators. Also, the question allows it. – haykam Sep 9 at 13:59

24 Answers 24

up vote 95 down vote accepted

I think that

$\left( 0! + 0! + 0! + 0! \right)!! = 8$.

This is because

$0! = 1$ and $4!! = 8$. Note that $\left( 0! + 0! + 0! + 0! \right)!! = \left( 1+1+1+1 \right)!! = \left (4 \right)!! = 8$.

This works and is valid because

The question says I’m allowed to use any of the following symbols in my answer, I am not restricted to using $!$ as an operation only.

  • 64
    for those who are confused, !! is a mathematical operator that gives the product of all positive integers upto the argument which have the same parity (odd/even) as the argument, its called a semifactorial. (thus 4!! is 2*4 = 8) – casualcoder Sep 7 at 7:16
  • 12
    @casualcoder most people assume $n!!$ for an arbitrary non-negative integer $n$ is the same as $(n!)!$, but it's not. That brings up some confusion, so I usually write $n!_k$ to denote $n$ with $k$ factorials, but not on this site. – user477343 Sep 7 at 11:49
  • 3
    @casualcoder Google disagrees with Wolfram on this. – user1717828 Sep 7 at 14:46
  • 10
    Google disagrees with Wolfram on a lot of things. When it comes to math, chances are Wolfram is the correct one. – AlexanderJ93 Sep 7 at 23:03
  • 2
    @user1717828, user477343’s comment above explains why Google’s interpretation is not correct in this context. – El-Guest Sep 7 at 23:09

A lateral thinking answer:

0! 0 0 0, because the binary equivalent of 8 is 1000 :)

  • 8
    I like this! very direct and minimal. – Ruadhan2300 Sep 7 at 14:25
  • 2
    My favourite one! I did wonder if someone would go binary. – oliver-clare Sep 7 at 15:07
  • I was just checking existing answers to see if anyone else had thought of ! In the sense of negation, and binary. So "yes" :) – Stilez Sep 10 at 8:24
  • I have reached my daily voting limit (DVL), but Imma vote this when I can, get it to $99$, and then hope that another user actually puts another upvote :P – user477343 Oct 3 at 7:11

$0 + 0 + 0 + 0 ~~!\!=~ 8$

because

$ !\!= $ is an alternative way of writing $ \ne $.

  • 4
    This is the answer! – user51438 Sep 8 at 2:20
  • 3
    @TheodoreWeld nope, this question is tagged mathematics, and you have to use a slash similar to Yout Ried instead of this – phuclv Sep 8 at 4:24

Lateral thinking!

$$0+0+\substack{0\\0}=0+0+8=8$$

  • 8
    First I thought "how does picking 0 out of 0 give you 8 combinations", then I got it. – Fabian Röling Sep 7 at 12:01
  • 81
    Looks more like vertical thinking to me. – Evargalo Sep 7 at 12:02

let me try:

$0! \Vert 0 - 0!-0! =8$
$10-1-1=8$

$\Vert$ is a concatenation operation

  • 1
    good solution but in this case you cant use '[' or ']' – casualcoder Sep 7 at 7:13
  • 3
    @casualcoder It was explicitly allowed. If this wasn't meant to be a valid solution, why even allow it, as 00 = 0+0 = 0? – Zizy Archer Sep 7 at 7:51
  • 1
    I've never used $[\ldots ]$ as an operator before, let alone for what you use it as in this answer. I usually use it as a set notation; i.e., $[n]=\{1,2,\ldots n\}$ :P – user477343 Sep 7 at 11:53
  • 2
    I think "concatenation allowed" in these puzzles usually means that, for example, 2 8 7 can be 28 ÷ 7 = 4, but not (2+8)7 = 107 – Chronocidal Sep 7 at 14:22
  • 3
    @Chronocidal What you are saying is probably true about most of these puzzles. But in this particular puzzle where all the digits are 0, that interpretation does not make a lot of sense. To me this answer feels more legitimate than the accepted answer. That's because concatenation is explicitly allowed, but the !! is not explicitly allowed (though it may be implied). – kasperd Sep 8 at 12:20

$((0!+0!)^{(0!+0!)})!!$

Evaluation:

$((0!+0!)^{(0!+0!)})!!$
$\rightarrow ((1+1)^{(1+1)})!!$
$\rightarrow (2^2)!!$
$\rightarrow 4!! = 8$

  • How did I not think of that?? DVL16 :\ – user477343 Oct 3 at 7:12

It's different:

$\,++$
$0\;\;\;0$
$\,++$
$0\;\;\;0$
$\,++$

An ASCII art $8$ using only four $0$'s and $+$'s.

0 + 0 + 0 + 0 = !8

because

In C/C++, ! refers to the logical not operator, where all non-zero values become 0, and 0 becomes 1.

  • I think this should be "the binary not operator". – Raimund Krämer Sep 11 at 8:17
  • 3
    @RaimundKrämer ITYM unary not. C99 calls it the "logical negation operator" and files it in the chapter "Unary operators". – Jens Sep 11 at 15:56
  • But !8 can be a subfactorial of 8. – rus9384 Sep 12 at 11:39
  • @Raimund Krämer, In programming, we have logical operators and bitwise operators. Logical operators (!, &&, || in C) operate on boolean values (true and false). Bitwise operators (~, &, |, ^ in C) operate on bits (0 and 1) of numbers. Calling either set binary operators would be confusing, as both set work on binary values. – ikegami Sep 13 at 11:12
  • @Raimund Krämer Also, "binary operator" can mean any operator on 2 values (as opposed to a unary operator such as ! or ~) – l k Sep 18 at 6:23

It's just a matter of perspective ...

0!/0 + 0!/0 = ∞

My reasoning....

0/0 is undefined so we have to first change the 0's into 1's with 0! (...and why did you write the infinity symbol sideways in your question?)

  • 1
    x/0 isn't infinite, though... – Adam Smith Sep 8 at 17:49
  • Lateral thinking was yesterday. Vertical thinking is the new kid in town! – Jens Sep 11 at 15:59
  • 1
    x/0 == +infinity, per ieee 754 – j__m Sep 15 at 12:40

$$[+!0]+[0]-!0-!0$$

Works in JavaScript. Hit F12 and type this into the console (This equation editor uses "−" instead of "-" so copy and paste doesn't quite work). Otherwise, it works in the same way as @malioboro and @Arnaldur's answers.

In fact, you can make any JavaScript application run just by using a combination of 6 characters, which is what inspired me to make this. I substituted +[] for 0 when asking JSF**k to do 10-2.

  • 3
    I like this abuse of javascript a lot. !0 for true, +!0 for 1, [1] for array containing 1, [1]+[0] for concatenate two arrays to get the string "10" ; subtract 1 from that twice to end up as 8. Love it. – Ross Presser Sep 8 at 4:10
  • 2
    but the question is tagged mathematics and not programming – phuclv Sep 8 at 4:21
  • 3
    Who says you can use square brackets.... – user52269 Sep 8 at 6:57

$concat(0!,0) - 0! - 0! = 8$

becomes:

$concat(1,0) - 1 - 1 = 8$

and finally:

$10 - 2 = 8$

cool puzzle!

  • 2
    Great answer! But it has already been answered (check out @malioboro 's answer). Nonetheless, welcome to the Puzzling Stack Exchange (Puzzling.SE)! Since you are new to the Stack Exchange community, let alone this site, I strongly suggest that you visit the Help Center for more info; in particular, I suggest going here, then here for questions (not answers) :D – user477343 Sep 7 at 7:44

$0 + 0 + 0 + 0 \equiv 8$

Adding the symbol $-$ over the equals sign makes it a congruence sign. Considering the congruence relation, we must be working mod N, where N divides 8.

Just put the minus symbol over the first zero to give it the look of a figure 8 and use plus to add the zeros.

  • Great answer, but unfortunately, this is a duplicate of @TheSimpliFire 's answer. – user477343 Sep 7 at 11:51
  • 2
    @user477343 No, not quite, since this answer puts a line through the 0 instead of putting two 0s on top of each other. In this answer, only one 0 becomes an 8. – Fabian Röling Sep 7 at 12:02
  • @FabianRöling As I read it, it uses the minus symbol to be put over the first zero and make it look like an $8$. In my imagination, I assumed the zero is the bottom circle of $8$ since there is something over it, of which is another circle $\large\circ$. I did not fully understand what this answer was talking about in saying to use a subtraction symbol, but just assumed it was just like TheSimpliFire's answer due to their similarity; and since that is a great answer, I thought this was great, too. If you understand this answer, may you please explain to me in other words if you can? :\ – user477343 Sep 7 at 12:09
  • 3
    @user477343 It uses the horizontal line of the minus sign to cut through the middle of the $0$. It is "over" the zero in the sense of overwritten. – Jaap Scherphuis Sep 7 at 12:55
  • 1
    Yeah. 'over' in the sense of "in front of" on a dimension between you and your monitor. – Sentinel Sep 7 at 14:44

Here is an answer that doesn't use the semi-factorial or any concatenation.

$$0 + 0 - 0! / 0 = (-8)!$$

The left side is $-1/0$ and the right side is $-\infty$.

Plugging the expression into Wolfram.

  • 4
    Division by zero is undefined (the limit of 0!/x as x goes to 0 is plus or minus infinity) and so are negative integer factorials (they are not equivalent to negative infinity). Even if they both evaluated to +∞, you can prove nonsense assuming you can equate infinities and treat like a real number. E.g., |1/0| = +∞, adding 1 to positive infinity is still positive infinity, hence |1/0| + 1 = +∞, hence |1/0| = |1/0| +1 by transitivity of equality. Subtract |1/0| from both sides and prove 0 = 1. – dr jimbob Sep 8 at 18:11

Question limits the symbols, not the operations. So with the symbol + can make the operator ++.

(++(++(++(++(++(++(++0000))))))) = 8

  • I think you'd need the prefix form if you actually wanted that to work. – LegionMammal978 Sep 7 at 23:48
  • 1
    Doh. Of course you can't increment a literal in the first place. – David Browne - Microsoft Sep 7 at 23:55
  • 1
    but that symbol doesn't exist in mathematics – phuclv Sep 8 at 4:20
  • 2
    You need to pass an l-value to the ++ and -- operators, and neither their result or a literal is one. – NieDzejkob Sep 8 at 14:35

concatenate(0!, 0) - concatenate(0! + 0!) = 8.

Note that 0! = 1

(0!, 0) = 10, and (0! + 0!) = 2, so 10 - 2 = 8

  • Unfortunately concatenate is not a valid operation. – boboquack Sep 11 at 1:37
  • Congrats, concatenation is allowed now! Good answer, but people beat you to it. Welcome to Puzzling.SE! Here's a bonus puzzle: What's the word? Hilarious - extremely amusing – Alto Sep 11 at 1:47
  • Also, concatenation is combination. Basically, (2, 4) = 24, you get it. – Alto Sep 11 at 1:48

This could work too:

(0!+0+0)/0 = ∞

Explanation

(0!+0+0)/0 = 1/0 which is infinity (8 but put horizontally)

  • That is not infinity — it is undefined :\ – user477343 Oct 3 at 11:33

Add a - above the equals to get $0000 \equiv 8$, which is true assuming we are working in the ring $\mathbb{Z}/\mathbb{2Z}$. (Note I'm trying to avoid writing $[0] = [8]$...)

$ ((0! + 0!)\$)*(0! + 0!) = 2^2*2 = 8 $.

Further explanation:

The $\$$ operation denotes the superfactorial defined as : $ n\$ = (n!) \uparrow \uparrow (n!)$.

  • 3
    Good idea, but make sure to read the question fully. It gives you a list of what operations can be used and $ is not one of them. – Sensoray Sep 7 at 15:26

If you turn the problem around

enter image description here

  • Similar to @rrauenza's answer – TheSimpliFire Sep 8 at 8:11
  • Yes. A different way to express the same idea. – Florian F Sep 8 at 9:13

As per the list of allowed symbols we are clearly allowed to use "$,$" and "$.$"
This is doubly evident as otherwise how would we use the $\mathbb{concatenation}$ function without a comma to separate the arguments?

So the solution is:

$0! - \mathbb{concatenation}(., 0 + 0! + 0!!) = .8$
$1 - \mathbb{concatenation}(., 0 + 1 + 1) = .8$
$1 - \mathbb{concatenation}(., 2) = .8$
$1 - .2 = .8$

  • You may simplify 0!! as 0!. – Cœur Sep 11 at 15:28
  • I felt like $0+0!+0!!$ looked more elegant/purposeful as if it was part of a sequence like $a(n, m) = a(n-1,m)!; a(0,m)=m$ – SamYonnou Sep 11 at 16:58

$00^{00} = 0^0$ which is indeterminate. In some sense, an indeterminate form can be equal to any value, since in Calculus, a function that approaches "$0^0$" can approach any real value, including $8$. So in that sense, $0^0 = 8$.

If you don't like concatenating two zeroes as "$00$", then $0^0 + 0 + 0$ also works.

  • 7
    There are no widely accepted definitions under which your equation is considered to be true. – Tanner Swett Sep 7 at 17:34
  • @TannerSwett Didn't think it was that unreasonable. My thinking is you can construct a function $f(x)^{g(x)}$ where $f$ and $g$ both limit to zero at some point $c$ such that $f(x)^{g(x)}$ limits to any real number at $c$, including $8$. Admittedly, writing $0^0 = 8$ is basically mathematically false. It is indeterminate for the reason I stated above. But this is Puzzling SE, not Mathematics SE, so I figured it was ok to think outside the box and not be formal with math. – RothX Sep 10 at 13:23
  • Yeah, I dunno if I'd call it "that unreasonable". But if I saw a student say that the equation $0^0 = 8$ is true, I'd think that they probably misunderstand what an indeterminate form means. If I saw a math professor say the same thing, I'd ask them if they could please be a little more rigorous. – Tanner Swett Sep 10 at 13:59
  • @TannerSwett Yeah, I completely agree. I'd never write $0^0 = 8$ in a mathematical setting, but since this is a puzzle, not a math problem, I thought maybe I could stretch a bit. – RothX Sep 11 at 1:58

Factorial of Zero equals to 1. And 4!!=8. Then you can put plus and power to end up the story. ((0!+0!)^(0!+0!))!!

  • 4
    this is almost un_defined's answer, given 17hours ago, except for you haven't added the double factorial to make the sum correct - yours gives 2^2 which is 4 – JonMark Perry Sep 8 at 7:55
  • Welcome to Puzzling.SE! As JonMark Perry has noted, please check that your answer hasn't already been given (and that it's correct) before posting it. You should also hide answers inside spoiler tags, in case anyone wants to have a go at the puzzle themselves without seeing the answers first. Please take the tour and visit the help center to learn more about the site. – F1Krazy Sep 8 at 8:55

Similar to @Vaelus

$0+0+0+0 \leq 8$

Explanation

You can get the $\leq$ by adding a $-$ inclined on top of the $=$

  • The goal is to strictly make $0\,0\,0\,0=8$ and not to "make the statement true" (therefore allowing this answer to be acceptable) :\ – user477343 Oct 3 at 11:35
  • When you say "the goal is to make [math expression]", then you're under the influence of the interpretation of that mathematical expression. IMO, "make the statement true" is the one and only interpretation to be taken, while you could argue more strict rules about not manipulating already existing symbols. – villasv Oct 3 at 13:18
  • I see, you have a point. I should've said that my comment is solely based on how I interpreted the question, possibly explaining why your answer was sadly downvoted. I am positive that there exists another answer that manipulates the equation in a similar way that you have. Sorry if I sounded mean. You can get a $(+1)$ but in at least $2$ hours, once my daily voting limit (DVL) is over :) – user477343 Oct 3 at 21:00

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.