All about flooble | fun stuff | Get a free chatterbox | Free JavaScript | Avatars
 perplexus dot info

 A cancellation fallacy (Posted on 2013-01-18)
Sometimes an arithmetic procedural error produces a correct answer.
An accidental cancellation is reducing a fraction by canceling individual digits in the numerator and denominator.

In some cases the result is equal to that obtained by a correct process.
Examples:
16/64 = 16/64 = 1/4;
26/65 = 26/65 = 2/5;
266/665 = 266/665 = 2/5;
49/98 = 4/8 = 1/2 etc.

Try to find two-digit cases in bases other than base 10,(e.g. 13/32 = 1/2 ( the only solution in base 4).

 No Solution Yet Submitted by Ady TZIDON No Rating

Comments: ( Back to comment list | You must be logged in to post comments.)
 re(2): computer solutions -a partial errata Comment 3 of 3 |
(In reply to re: computer solutions -a partial errata by Ady TZIDON)

Ah yes, you're so right. I neglected the very important fact that the canceled digits had to be equal to each other!

I've fixed the program, and extended to base 20 as there are fewer results. Sorry about that.

`13/32=1/2   415/53=1/3   625/54=2/4   617/74=1/4   837/76=3/6   814/43=1/3   928/86=2/6   916/64=1/4   1019/95=1/5   1026/65=2/5   1049/98=4/8   101B/B6=1/6   122B/B8=2/8   123B/B9=3/9   125B/BA=5/A   121D/D7=1/7   146D/DC=6/C   1417/75=1/5   1527/76=2/6   152C/C9=2/9   152E/EA=2/A   153C/CA=3/A   154E/EC=4/C   1515/54=1/4   1619/96=1/6   161F/F8=1/8   162A/A8=2/8   1639/98=3/8   163F/FC=3/C   167F/FE=7/E   161H/H9=1/9   182H/HC=2/C   185H/HF=5/F   188H/HG=8/G   181J/JA=1/A   203J/JF=3/F   204J/JG=4/G   209J/JI=9/I   20`

The revised program:

DECLARE FUNCTION alp\$ (x!)
CLS
OPEN "cancfall.txt" FOR OUTPUT AS #2
FOR b = 2 TO 20

FOR a1 = 1 TO b - 1
FOR a2 = 1 TO b - 1
FOR b1 = 1 TO b - 1
FOR b2 = 1 TO b - 1
IF a1 <> a2 OR b1 <> b2 THEN
IF a1 <> b1 OR a2 <> b2 THEN
num = b * a1 + a2: den = b * b1 + b2
IF den >= num THEN
IF a2 * den = b1 * num AND a1 = b2 THEN
PRINT alp\$(a1); alp\$(a2); "/"; alp\$(b1); alp\$(b2); "="; alp\$(a2); "/"; alp\$(b1); TAB(12); b
PRINT #2, alp\$(a1); alp\$(a2); "/"; alp\$(b1); alp\$(b2); "="; alp\$(a2); "/"; alp\$(b1); TAB(12); b
DO: LOOP UNTIL INKEY\$ > ""
END IF
IF a1 * den = b2 * num AND a2 = b1 THEN
PRINT alp\$(a1); alp\$(a2); "/"; alp\$(b1); alp\$(b2); "="; alp\$(a1); "/"; alp\$(b2); TAB(12); b
PRINT #2, alp\$(a1); alp\$(a2); "/"; alp\$(b1); alp\$(b2); "="; alp\$(a1); "/"; alp\$(b2); TAB(12); b
END IF
END IF
END IF
END IF
NEXT
NEXT
NEXT
NEXT

NEXT b

CLOSE

END

FUNCTION alp\$ (x)
alp\$ = MID\$("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", x + 1, 1)
END FUNCTION

 Posted by Charlie on 2013-01-18 20:51:57

 Search: Search body:
Forums (0)