Drexel dragonThe Math ForumDonate to the Math Forum

Ask Dr. Math - Questions and Answers from our Archives
_____________________________________________
Associated Topics || Dr. Math Home || Search Dr. Math
_____________________________________________

Crypto-Number Puzzle


Date: 01/21/97 at 08:56:18
From: Ivan
Subject: Good luck with this one!

I received this problem when I was still attending secondary school. 
I still haven't figured it out.

A simple adding sum like one gets to do in one's third or is it 
second school year? But... the digits are hidden by alphanumeric 
symbols. Each symbol represents a digit. When all the symbols have 
been exchanged for digits, the sum should work: 

            O N E
            T W O
            T W O
        T H R E E
     +  T H R E E 
  -------------------
      E L E V E N 

The answer should look something like:
 
           0 3 1
           4 8 0
           4 8 0
       4 5 6 1 1 
    +  4 5 6 1 1 
-----------------
     1 9 1 2 1 3
     
The values of each letter are: 0 = O, 1 = E, 2 = V, 3 = N, 4 = T, 
5 = H, 6 = R, 7 not used, 8 = W, 9 = L. It is incorrect unfortunately 
because 031 + 480 + 480 + 45611 + 45611 does not equal 191213.

According to the teacher who gave us the problem, it does have a 
solution.  I never got around to asking him what it was.

Ivan Smit


Date: 01/21/97 at 23:00:16
From: Doctor Mitteldorf
Subject: Re: Good luck with this one!

Dear Ivan,
 
Thanks for the puzzle.  I haven't solved one of these crypto-number 
puzzles since I was eleven years old and my dad gave me:

 SEND + MORE = MONEY

It's not hard to write a program that finds solutions the dumb way, 
by checking every possible permutation of the digits. In fact, on my 
Pentium 133, the attached program only takes 2 minutes to run.  
You might like to try it, or better still, try making it more 
efficient by eliminating some of the searches that you can tell in 
advance are unproductive.

I got three independent solutions, but two of them have E = 0, which 
is not so elegant, since we don't usually write numbers with leading 
zeros.  The unique "elegant" solution is:

   391
   803
   803
 84611
 84611
------
171219

Here's a program listing in Turbo Pascal:

program Eleven;

{Solve the cryptogram    ONE
                         TWO
                         TWO
                       THREE
                       THREE
                       -----
                      ELEVEN}

var o,n,e,t,w,h,r,l,v  :longint;
    s,outstr :string;
    fout :text;

procedure TryOne;
          var x,y :longint;
          begin
          o:=ord(outstr[1])-48;
          n:=ord(outstr[2])-48;
          e:=ord(outstr[3])-48;
          t:=ord(outstr[4])-48;
          w:=ord(outstr[5])-48;
          h:=ord(outstr[6])-48;
          r:=ord(outstr[7])-48;
          l:=ord(outstr[8])-48;
          v:=ord(outstr[9])-48;
          if 102*o + 10*n + 23*e + 20200*t + 20*w + 2000*h + 200*r 
               = 101010*e + 10000*l + 100*v + n
          then begin
             assign(fout,'ELEVEN.TXT'); append(fout);
             writeln(fout,'o=',o);
             writeln(fout,'n=',n);
             writeln(fout,'e=',e);
             writeln(fout,'t=',t);
             writeln(fout,'w=',w);
             writeln(fout,'h=',h);
             writeln(fout,'r=',r);
             writeln(fout,'l=',l);
             writeln(fout,'v=',v);
             writeln(fout,'n=',n);
             writeln(fout);
             writeln(fout,'   ',o,n,e);
             writeln(fout,'   ',t,w,o);
             writeln(fout,'   ',t,w,o);
             writeln(fout,' ',t,h,r,e,e);
             writeln(fout,' ',t,h,r,e,e);
             writeln(fout,'--------');
             writeln(fout,e,l,e,v,e,n);
             writeln(fout);
             writeln('   ',  o,n,e);
             writeln('   ',  t,w,o);
             writeln('   ',  t,w,o);
             writeln(' ',t,h,r,e,e);
             writeln(' ',t,h,r,e,e);
             writeln('--------');
             writeln(e,l,e,v,e,n);
             close(fout);
             end;
          end;

procedure Permute_it(s :string);
          var ss    :string;
              i,len :integer;
          begin
          len:=length(s);
          if (len=0) then
            TryOne
          else for i:=1 to len do
            begin
            outstr:=outstr+s[i];
            ss:=s;
            delete(ss,i,1);
            Permute_it(ss);
            Delete(outstr,length(outstr),1);
            end;
          end;

begin
outstr:='';
s:='0123456789';
Permute_it(s);
end.

-Doctor Mitteldorf,  The Math Forum
 Check out our web site!
    
Associated Topics:
High School Puzzles
Middle School Puzzles

Search the Dr. Math Library:


Find items containing (put spaces between keywords):
 
Click only once for faster results:

[ Choose "whole words" when searching for a word like age.]

all keywords, in any order at least one, that exact phrase
parts of words whole words

Submit your own question to Dr. Math

[Privacy Policy] [Terms of Use]

_____________________________________
Math Forum Home || Math Library || Quick Reference || Math Forum Search
_____________________________________

Ask Dr. MathTM
© 1994-2013 The Math Forum
http://mathforum.org/dr.math/