10  REM-BASE-CONVERTS A NUMBER IN ANY BASE INTO ANY BASE
15  REM HP 36796A, 6/74
20  REM-PETER KATZ, 11/2/72, RAVENSWOOD
30  PRINT "THIS PROGRAM IS A BASE CONVERTER"
40  PRINT "IT CONVERTS A NUMBER IN A BASE 10 OR LESS"
50  PRINT "INTO A GIVEN BASE (10 OR LESS)"
60  PRINT 
70  PRINT "ENTER THE NUMBER";
80  INPUT N
90  PRINT "ENTER ITS BASE";
100  INPUT Q
110  PRINT "ENTER DESIRED BASE";
120  INPUT Z
130  C=N
140  IF N<1 OR Q<2 OR Z<2 THEN 550
150  M=0
160  A=1
170  IF N<10^A THEN 200
180  A=A+1
190  GOTO 170
200  A=A-1
210  IF A=0 THEN 280
220  W=INT(.1^A*N+.000005)
230  IF W >= Q THEN 550
240  X=W*Q^A
250  N=N-10^A*W
260  M=M+X
270  GOTO 200
280  IF N >= Q THEN 550
290  P=M+N
300  X=0
310  A=1
320  IF P<Z^A THEN 350
330  A=A+1
340  GOTO 320
350  A=A-1
360  IF A=0 THEN 490
370  B=1
380  J=B*Z^A
390  IF J>P THEN 420
400  B=B+1
410  GOTO 380
420  B=B-1
430  IF B>9 THEN 550
440  J=B*Z^A
450  Y=B*10^A
460  X=X+Y
470  P=P-J
480  GOTO 350
490  E=X+P
500  PRINT 
510  PRINT "THE NUMBER "C" IN BASE "Z" IS "E
520  PRINT 
530  PRINT 
540  GOTO 70
550  PRINT 
555  PRINT "SOMETHING IS WRONG, START OVER"
560  PRINT 
570  GOTO 70
580  END 
