Als 2 + 2 = 6 dan 1 + 3 =?


Beste antwoord

Er zijn veel interessante antwoorden op deze … bizarre vraag … kan net zo goed mijn geluk beproeven, denk ik ?

We krijgen dus: 2 + 2 = 6 en 1 + 3 =?

Methode 1:

Deze vraag is op de een of andere manier getagd onder wiskundige trucs en puzzels en ik veronderstel dat we alle wiskundige logica die we kennen kunnen opschorten, zeg maar ceteris paribus.

Bij nader inzien zien we dat de enige het verschil tussen beide vergelijkingen is -1 (2 → 1) en +1 (2 → 3). Ervan uitgaande dat ceteris paribus zoals vermeld, zou het antwoord ook beide -1 moeten ervaren en +1.

Daarom is mogelijk het simpele antwoord

1 + 3 = 6

Methode 2:

En aangezien dit een puzzel, laten we de dingen vanuit een ander perspectief bekijken. Terwijl andere methoden begonnen zijn met het gebruik van alfabetten, zal ik een typische vervangingstechniek proberen … hoewel deze mogelijk gebrekkig is.

Laten we aannemen dat 2 = 3.

2u = 3 dus daarom 1u = 1.5 en 3u = 4.5

Daarom 1 + 3 = 1.5 + 4.5 = 6

Methode 3:

We zien dat er 4 nummers aanwezig zijn (2, 2, 1, 3), waarvan er twee hetzelfde zijn (2) . Als we vermenigvuldiging zouden gebruiken, wat als de getallen in beide vergelijkingen zouden worden verdeeld?

2 × 3 = 6. We zijn over met 2 en 1.

Daarom 2 × 1 = 2 = 1 + 3 = 2.

Daar zijn zoveel mogelijke antwoorden en het komt allemaal neer op onze creativiteit in het buigen van wiskundige wetten.

Update: ik vond de letterbenadering van de puzzel en de handen erg leuk naar beneden, het moet de meest logische maar meest passende methode zijn voor een puzzel.

Antwoord

Het lijkt erop dat dit vraagt ​​om overbelasting van het + -symbool!

Hoe zit dit? Als je een uitdrukking hebt waarbij een bepaald geheel getal – noem het Konijn ter wille van de discussie – aan beide zijden van + verschijnt, moet je Konijn verdubbelen, het resultaat kwadrateren en Konijn aan het vierkant toevoegen. Dus 7 + 7 betekent dat je 7 moet verdubbelen, 14 geven, 196 geven. Tenslotte 7 bij 196 optellen, 203 geven.

Dat lijkt het makkelijke gedeelte te zijn. Het interessante deel van de puzzel, voor mij, is hoe je een definitie van die overbelaste + methode in Scala schrijft, zodat de body van de definitie + kan gebruiken met zijn gewone betekenis van eenvoudige optelling, niet een recursieve referentie.

Daar moet ik me achter krabben.

Update: de volgende Scala REPL-dialoog illustreert een manier om + een nieuwe betekenis te geven, in de context van een nieuw datatype genaamd Rabbit.

scala> case class Rabbit(i: Int) {def +(y:Rabbit):Int=4*i*i+y.i}

defined class Rabbit

scala> Rabbit(7)

res5: Rabbit = Rabbit(7)

scala> res5+res5

res6: Int = 203

scala> (1 to 7).map(Rabbit(\_)).map(r=>r+r)

res7: scala.collection.immutable.IndexedSeq[Int] = Vector(5, 18, 39, 68, 105, 150, 203)

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *