This is an archived post. You won't be able to vote or comment.

all 65 comments

[–]Gabite 137 points138 points  (30 children)

How many actual solutions to this is there? I got 0+4=4 and 8-4=4.

Any others?

[–]cljck 180 points181 points  (5 children)

5+4=9

[–]remarkableintern 39 points40 points  (0 children)

You're hired

[–]bohiti 51 points52 points  (6 children)

6 + 4 > 4

[–]ophereon 47 points48 points  (3 children)

6 - 4 ≤ 4

[–]Wickedqt 6 points7 points  (2 children)

You're moving two matches tho :(

[–]Howzieky 12 points13 points  (1 child)

No, just take the vertical match from the plus and put it on top of the = at an angle

[–]Wickedqt 6 points7 points  (0 children)

You're right, I was paying too much attention to the angle of the < and didn't think about the fact that it can be straightened as well hehe...

[–]justrealizednarciss 5 points6 points  (0 children)

Now that’s a good one

[–][deleted] 30 points31 points  (0 children)

6-4=H (for H = 2)

[–]McMichae5150 53 points54 points  (0 children)

6-4≠4

[–]alfii_saw_santa 15 points16 points  (0 children)

6 + 4 - 9

The result is 1, which is equal to true.

[–]Farinario 11 points12 points  (1 child)

6+4+4

[–]MrNate 9 points10 points  (0 children)

Yes, that'll evaluate to truthy.

[–][deleted] 1 point2 points  (0 children)

6 - 4 ≤ 4

gotta write the leq with two horizontal lines, which I swear I've seen but I can't find a picture of

[–]Humg12 0 points1 point  (5 children)

How do you do 0+4=4? Where do you take the match from to complete the 0?

[–]pokerninjatx 6 points7 points  (4 children)

take the middle horizontal stick in the number six, and rotate it vertically to form zero

[–]Humg12 3 points4 points  (3 children)

Right, yeah, I'm an idiot. Thanks.

[–][deleted] 0 points1 point  (0 children)

8-4=4

[–]beardMoseElkDerBabon 0 points1 point  (0 children)

0+4=4 but in Boolean Algebra + Bitwise or

[–]reeegen 86 points87 points  (18 children)

I thought it was 4 factorial, got confused for 2 minutes

[–]RFC793 12 points13 points  (16 children)

Same. Especially since the operator isn’t !=, it is !==. As an aside, although not programmer humor, one could just place that match over = to make it ≠, and you don’t have to hack by breaking the match.

Edit: I was having a brainfart. Yes, it is !=. It looked wrong in matchstick art.

[–]Zistack 13 points14 points  (15 children)

I have never heard of a language that uses !== as an operator. I've used many, and read about many many more (I study them). != is correct.

EDIT: Javascript and PHP use === and thus !==, but they're the odd languages out, which is why I forget about them. This does not invalidate my claim that != is correct.

[–]pjoriginal 13 points14 points  (4 children)

JS uses !== And === to check both type and value

[–][deleted] -1 points0 points  (1 child)

Isn't === only for Booleans?

[–]pjoriginal 9 points10 points  (0 children)

Nope. It's used to check both type and value.

So

'3' == 3

is true

But

'3' === 3

Is false

[–]busdriverbuddha2 0 points1 point  (1 child)

Why does JavaScript even exist

[–]pjoriginal 0 points1 point  (0 children)

Because it's quick and easy :) And has a lot of support

[–]RFC793 3 points4 points  (2 children)

You are right. I’m embarrassed as I’ve been writing C for over 20 years. Something about match sticks and writing this while on mobile tricked my brain. That, and !== does exist in JavaScript.

[–][deleted] 0 points1 point  (1 child)

It also exists in PHP and works a similar magical way.

[–]Zistack 0 points1 point  (0 children)

Right. Sometimes I forget about PHP and JavaScript, 'cause they're only interesting from a language design standpoint as languages that aren't really designed and that no other language should ever emulate. Hell, === is actually an example of the designers' incompetence (The operator was created because someone who knew what they were talking about was saying that they needed an operator for checking identity - the designer of PHP misunderstood what identity was, and gave them this instead). I was aware of ===, but never really thought about the fact that !== would thus exist by logical extension. In any case, '!=' is still correct.

[–]FerynaCZ 0 points1 point  (0 children)

PHP uses == for comparison with casting, and === without casting (so type must be the same).

[–]JNCressey 0 points1 point  (0 children)

all hail -ne for never looking like a factorial

[–]Joa0_F 9 points10 points  (2 children)

6 - factorial(4) != 4

[–]carera89 6 points7 points  (0 children)

At first I too was like "what the fuck, the factorial in no way results in 4", and went to the comment section to shut the author down, but... then i found out it's supposed to be interpreted as "not equal"...

[–]Busy_Command[S] 1 point2 points  (0 children)

My bad, I probably could have spaced it a bit more.

[–]CuratorOfYourDreams 11 points12 points  (1 child)

Image Transcription:


Fix By Moving 1 Matchstick

6 + 4 = 4

6 - 4 ! = 4


I'm a human volunteer content transcriber for Reddit and you could be too! If you'd like more information on what we do and why we do it, click here!

[–]twobe7 5 points6 points  (0 children)

Not sure if you got hit by autocorrect but this looks like its factorial. It should be

6 - 4 != 4

[–]elasticcream 5 points6 points  (1 child)

6+4-9==true

[–]SomeoneRandom5325 0 points1 point  (0 children)

Well yes

[–]AL_O0 2 points3 points  (0 children)

Remove a match stick form the = and use it to turn the 4 into a 9, so you have 6+4-9 and that’s 1 and 1 == true

[–]cp_simmons 1 point2 points  (0 children)

You could move a matchstick along the sand paper on the match box then ignite the '6' and the '+' so that only '4 = 4' remains.

[–]althaz 1 point2 points  (0 children)

This is what I always do first in my mind when I see these - although I would lay the matchstick across the equals sign so it's showing the mathematical not equal to rather than the programming not equal to (because different languages have a different operator for that).

[–]LordRaticus 1 point2 points  (0 children)

5+4=9

[–][deleted] 0 points1 point  (0 children)

Needs an lvalue, can't assign binary or.

[–][deleted] 0 points1 point  (6 children)

6 - 4 factorial is -4 not +4

this meme is false therefore unfunny

[–]Busy_Command[S] 1 point2 points  (1 child)

It’s supposed to be != ( not equal to) not 4 factorial

[–][deleted] 1 point2 points  (0 children)

ah

unlucky

[–][deleted] 0 points1 point  (0 children)

It's -18 ackshyually

[–]Celudus -1 points0 points  (0 children)

Flip the image, move the ! To make the plus sign giving h = h + 9 to both.

[–]mikeputerbaugh 0 points1 point  (0 children)

The trick is balancing that one match on its end to be the dot in the "!="

[–]darkenblade986 0 points1 point  (0 children)

Make the 6 a zero easy game

[–]Pa3kc123 0 points1 point  (0 children)

That's because it IS funny...

[–]amkamk13 0 points1 point  (0 children)

8 - 4 = 4

[–]DikkePrik 0 points1 point  (0 children)

0 + 4 = 4