From 8727dfff29519e287246c2a6bef8d6c4477958aa Mon Sep 17 00:00:00 2001 From: nanochess Date: Mon, 1 Mar 2021 16:30:23 -0600 Subject: [PATCH] Ported HURKLE, KINEMA, LETTER, LITQUIZ, LOVE, and MATHDICE to Javascript --- 51 Hurkle/javascript/hurkle.html | 9 ++ 51 Hurkle/javascript/hurkle.js | 102 ++++++++++++++++++ 52 Kinema/javascript/kinema.html | 9 ++ 52 Kinema/javascript/kinema.js | 95 ++++++++++++++++ 54 Letter/javascript/letter.html | 9 ++ 54 Letter/javascript/letter.js | 91 ++++++++++++++++ 57 Literature Quiz/javascript/litquiz.html | 9 ++ 57 Literature Quiz/javascript/litquiz.js | 119 +++++++++++++++++++++ 58 Love/javascript/love.html | 9 ++ 58 Love/javascript/love.js | 105 ++++++++++++++++++ 61 Math Dice/javascript/mathdice.html | 9 ++ 61 Math Dice/javascript/mathdice.js | 113 +++++++++++++++++++ 61 Math Dice/mathdice.bas | 2 +- 13 files changed, 680 insertions(+), 1 deletion(-) create mode 100644 51 Hurkle/javascript/hurkle.html create mode 100644 51 Hurkle/javascript/hurkle.js create mode 100644 52 Kinema/javascript/kinema.html create mode 100644 52 Kinema/javascript/kinema.js create mode 100644 54 Letter/javascript/letter.html create mode 100644 54 Letter/javascript/letter.js create mode 100644 57 Literature Quiz/javascript/litquiz.html create mode 100644 57 Literature Quiz/javascript/litquiz.js create mode 100644 58 Love/javascript/love.html create mode 100644 58 Love/javascript/love.js create mode 100644 61 Math Dice/javascript/mathdice.html create mode 100644 61 Math Dice/javascript/mathdice.js diff --git a/51 Hurkle/javascript/hurkle.html b/51 Hurkle/javascript/hurkle.html new file mode 100644 index 00000000..8d2a5022 --- /dev/null +++ b/51 Hurkle/javascript/hurkle.html @@ -0,0 +1,9 @@ + + +HURKLE + + +

+
+
+
diff --git a/51 Hurkle/javascript/hurkle.js b/51 Hurkle/javascript/hurkle.js
new file mode 100644
index 00000000..1e3301e5
--- /dev/null
+++ b/51 Hurkle/javascript/hurkle.js	
@@ -0,0 +1,102 @@
+// BATNUM
+//
+// Converted from BASIC to Javascript by Oscar Toledo G. (nanochess)
+//
+
+function print(str)
+{
+    document.getElementById("output").appendChild(document.createTextNode(str));
+}
+
+function input()
+{
+    var input_element;
+    var input_str;
+    
+    return new Promise(function (resolve) {
+                       input_element = document.createElement("INPUT");
+                       
+                       print("? ");
+                       input_element.setAttribute("type", "text");
+                       input_element.setAttribute("length", "50");
+                       document.getElementById("output").appendChild(input_element);
+                       input_element.focus();
+                       input_str = undefined;
+                       input_element.addEventListener("keydown", function (event) {
+                                                      if (event.keyCode == 13) {
+                                                      input_str = input_element.value;
+                                                      document.getElementById("output").removeChild(input_element);
+                                                      print(input_str);
+                                                      print("\n");
+                                                      resolve(input_str);
+                                                      }
+                                                      });
+                       });
+}
+
+function tab(space)
+{
+    var str = "";
+    while (space-- > 0)
+        str += " ";
+    return str;
+}
+
+// Main program
+async function main()
+{
+    print(tab(33) + "HURKLE\n");
+    print(tab(15) + "CREATIVE COMPUTING  MORRISTOWN, NEW JERSEY\n");
+    print("\n");
+    print("\n");
+    print("\n");
+    n = 5;
+    g = 10;
+    print("\n");
+    print("A HURKLE IS HIDING ON A " + g + " BY " + g + " GRID. HOMEBASE\n");
+    print("ON THE GRID IS POINT 0,0 IN THE SOUTHWEST CORNER,\n");
+    print("AND ANY POINT ON THE GRID IS DESIGNATED BY A\n");
+    print("PAIR OF WHOLE NUMBERS SEPERATED BY A COMMA. THE FIRST\n");
+    print("NUMBER IS THE HORIZONTAL POSITION AND THE SECOND NUMBER\n");
+    print("IS THE VERTICAL POSITION. YOU MUST TRY TO\n");
+    print("GUESS THE HURKLE'S GRIDPOINT. YOU GET " + n + " TRIES.\n");
+    print("AFTER EACH TRY, I WILL TELL YOU THE APPROXIMATE\n");
+    print("DIRECTION TO GO TO LOOK FOR THE HURKLE.\n");
+    print("\n");
+    while (1) {
+        a = Math.floor(g * Math.random());
+        b = Math.floor(g * Math.random());
+        for (k = 1; k <= n; k++) {
+            print("GUESS #" + k + " ");
+            str = await input();
+            x = parseInt(str);
+            y = parseInt(str.substr(str.indexOf(",") + 1));
+            if (x == a && y == b) {
+                print("\n");
+                print("YOU FOUND HIM IN " + k + " GUESSES!\n");
+                break;
+            }
+            print("GO ");
+            if (y < b) {
+                print("NORTH");
+            } else if (y > b) {
+                print("SOUTH");
+            }
+            if (x < a) {
+                print("EAST\n");
+            } else {
+                print("WEST\n");
+            }
+        }
+        if (k > n) {
+            print("\n");
+            print("SORRY, THAT'S " + n + " GUESSES.\n");
+            print("THE HURKLE IS AT " + a + "," + b + "\n");
+        }
+        print("\n");
+        print("LET'S PLAY AGAIN, HURKLE IS HIDING.\n");
+        print("\n");
+    }
+}
+
+main();
diff --git a/52 Kinema/javascript/kinema.html b/52 Kinema/javascript/kinema.html
new file mode 100644
index 00000000..0e41284e
--- /dev/null
+++ b/52 Kinema/javascript/kinema.html	
@@ -0,0 +1,9 @@
+
+
+KINEMA
+
+
+

+
+
+
diff --git a/52 Kinema/javascript/kinema.js b/52 Kinema/javascript/kinema.js
new file mode 100644
index 00000000..abd2bb1c
--- /dev/null
+++ b/52 Kinema/javascript/kinema.js	
@@ -0,0 +1,95 @@
+// KINEMA
+//
+// Converted from BASIC to Javascript by Oscar Toledo G. (nanochess)
+//
+
+function print(str)
+{
+    document.getElementById("output").appendChild(document.createTextNode(str));
+}
+
+function input()
+{
+    var input_element;
+    var input_str;
+    
+    return new Promise(function (resolve) {
+                       input_element = document.createElement("INPUT");
+                       
+                       print("? ");
+                       input_element.setAttribute("type", "text");
+                       input_element.setAttribute("length", "50");
+                       document.getElementById("output").appendChild(input_element);
+                       input_element.focus();
+                       input_str = undefined;
+                       input_element.addEventListener("keydown", function (event) {
+                                                      if (event.keyCode == 13) {
+                                                      input_str = input_element.value;
+                                                      document.getElementById("output").removeChild(input_element);
+                                                      print(input_str);
+                                                      print("\n");
+                                                      resolve(input_str);
+                                                      }
+                                                      });
+                       });
+}
+
+function tab(space)
+{
+    var str = "";
+    while (space-- > 0)
+        str += " ";
+    return str;
+}
+
+var q;
+
+function evaluate_answer(str, a)
+{
+    g = parseFloat(str);
+    if (Math.abs((g - a) / a) < 0.15) {
+        print("CLOSE ENOUGH.\n");
+        q++;
+    } else {
+        print("NOT EVEN CLOSE....\n");
+    }
+    print("CORRECT ANSWER IS " + a + "\n\n");
+}
+
+// Main program
+async function main()
+{
+    print(tab(33) + "KINEMA\n");
+    print(tab(15) + "CREATIVE COMPUTING  MORRISTOWN, NEW JERSEY\n");
+    print("\n");
+    print("\n");
+    print("\n");
+    while (1) {
+        print("\n");
+        print("\n");
+        q = 0;
+        v = 5 + Math.floor(35 * Math.random());
+        print("A BALL IS THROWN UPWARDS AT " + v + " METERS PER SECOND.\n");
+        print("\n");
+        a = 0.5 * Math.pow(v, 2);
+        print("HOW HIGH WILL IT GO (IN METERS)");
+        str = await input();
+        evaluate_answer(str, a);
+        a = v / 5;
+        print("HOW LONG UNTIL IT RETURNS (IN SECONDS)");
+        str = await input();
+        evaluate_answer(str, a);
+        t = 1 + Math.floor(2 * v * Math.random()) / 10;
+        a = v - 10 * t;
+        print("WHAT WILL ITS VELOCITY BE AFTER " + t + " SECONDS");
+        str = await input();
+        evaluate_answer(str, a);
+        print("\n");
+        print(q + " RIGHT OUT OF 3.");
+        if (q < 2)
+            continue;
+        print("  NOT BAD.\n");
+    }
+}
+
+main();
diff --git a/54 Letter/javascript/letter.html b/54 Letter/javascript/letter.html
new file mode 100644
index 00000000..744a5499
--- /dev/null
+++ b/54 Letter/javascript/letter.html	
@@ -0,0 +1,9 @@
+
+
+LETTER
+
+
+

+
+
+
diff --git a/54 Letter/javascript/letter.js b/54 Letter/javascript/letter.js
new file mode 100644
index 00000000..7aef3de9
--- /dev/null
+++ b/54 Letter/javascript/letter.js	
@@ -0,0 +1,91 @@
+// LETTER
+//
+// Converted from BASIC to Javascript by Oscar Toledo G. (nanochess)
+//
+
+function print(str)
+{
+    document.getElementById("output").appendChild(document.createTextNode(str));
+}
+
+function input()
+{
+    var input_element;
+    var input_str;
+    
+    return new Promise(function (resolve) {
+                       input_element = document.createElement("INPUT");
+                       
+                       print("? ");
+                       input_element.setAttribute("type", "text");
+                       input_element.setAttribute("length", "50");
+                       document.getElementById("output").appendChild(input_element);
+                       input_element.focus();
+                       input_str = undefined;
+                       input_element.addEventListener("keydown", function (event) {
+                                                      if (event.keyCode == 13) {
+                                                      input_str = input_element.value;
+                                                      document.getElementById("output").removeChild(input_element);
+                                                      print(input_str);
+                                                      print("\n");
+                                                      resolve(input_str);
+                                                      }
+                                                      });
+                       });
+}
+
+function tab(space)
+{
+    var str = "";
+    while (space-- > 0)
+        str += " ";
+    return str;
+}
+
+// Main program
+async function main()
+{
+    print(tab(33) + "LETTER\n");
+    print(tab(15) + "CREATIVE COMPUTING  MORRISTOWN, NEW JERSEY\n");
+    print("\n");
+    print("\n");
+    print("\n");
+    print("LETTER GUESSING GAME\n");
+    print("\n");
+    print("I'LL THINK OF A LETTER OF THE ALPHABET, A TO Z.\n");
+    print("TRY TO GUESS MY LETTER AND I'LL GIVE YOU CLUES\n");
+    print("AS TO HOW CLOSE YOU'RE GETTING TO MY LETTER.\n");
+    while (1) {
+        l = 65 + Math.floor(26 * Math.random());
+        g = 0;
+        print("\n");
+        print("O.K., I HAVE A LETTER.  START GUESSING.\n");
+        while (1) {
+            
+            print("\n");
+            print("WHAT IS YOUR GUESS");
+            g++;
+            str = await input();
+            a = str.charCodeAt(0);
+            print("\n");
+            if (a == l)
+                break;
+            if (a < l) {
+                print("TOO LOW.  TRY A HIGHER LETTER.\n");
+            } else {
+                print("TOO HIGH.  TRY A LOWER LETTER.\n");
+            }
+        }
+        print("\n");
+        print("YOU GOT IT IN " + g + " GUESSES!!\n");
+        if (g > 5) {
+            print("BUT IT SHOULDN'T TAKE MORE THAN 5 GUESSES!\n");
+        } else {
+            print("GOOD JOB !!!!!\n");
+        }
+        print("\n");
+        print("LET'S PLAY AGAIN.....");
+    }
+}
+
+main();
diff --git a/57 Literature Quiz/javascript/litquiz.html b/57 Literature Quiz/javascript/litquiz.html
new file mode 100644
index 00000000..e4aae4c3
--- /dev/null
+++ b/57 Literature Quiz/javascript/litquiz.html	
@@ -0,0 +1,9 @@
+
+
+LITERATURE QUIZ
+
+
+

+
+
+
diff --git a/57 Literature Quiz/javascript/litquiz.js b/57 Literature Quiz/javascript/litquiz.js
new file mode 100644
index 00000000..f4d6a4f6
--- /dev/null
+++ b/57 Literature Quiz/javascript/litquiz.js	
@@ -0,0 +1,119 @@
+// LITQUIZ
+//
+// Converted from BASIC to Javascript by Oscar Toledo G. (nanochess)
+//
+
+function print(str)
+{
+    document.getElementById("output").appendChild(document.createTextNode(str));
+}
+
+function input()
+{
+    var input_element;
+    var input_str;
+    
+    return new Promise(function (resolve) {
+                       input_element = document.createElement("INPUT");
+                       
+                       print("? ");
+                       input_element.setAttribute("type", "text");
+                       input_element.setAttribute("length", "50");
+                       document.getElementById("output").appendChild(input_element);
+                       input_element.focus();
+                       input_str = undefined;
+                       input_element.addEventListener("keydown", function (event) {
+                                                      if (event.keyCode == 13) {
+                                                      input_str = input_element.value;
+                                                      document.getElementById("output").removeChild(input_element);
+                                                      print(input_str);
+                                                      print("\n");
+                                                      resolve(input_str);
+                                                      }
+                                                      });
+                       });
+}
+
+function tab(space)
+{
+    var str = "";
+    while (space-- > 0)
+        str += " ";
+    return str;
+}
+
+// Main program
+async function main()
+{
+    print(tab(25) + "LITERATURE QUIZ\n");
+    print(tab(15) + "CREATIVE COMPUTING  MORRISTOWN, NEW JERSEY\n");
+    print("\n");
+    print("\n");
+    print("\n");
+    r = 0;
+    print("TEST YOUR KNOWLEDGE OF CHILDREN'S LITERATURE.\n");
+    print("\n");
+    print("THIS IS A MULTIPLE-CHOICE QUIZ.\n");
+    print("TYPE A 1, 2, 3, OR 4 AFTER THE QUESTION MARK.\n");
+    print("\n");
+    print("GOOD LUCK!\n");
+    print("\n");
+    print("\n");
+    print("IN PINOCCHIO, WHAT WAS THE NAME OF THE CAT\n");
+    print("1)TIGGER, 2)CICERO, 3)FIGARO, 4)GUIPETTO\n");
+    a = parseInt(await input());
+    if (a == 3) {
+        print("VERY GOOD!  HERE'S ANOTHER.\n");
+        r++;
+    } else {
+        print("SORRY...FIGARO WAS HIS NAME.\n");
+    }
+    print("\n");
+    print("\n");
+    print("FROM WHOSE GARDEN DID BUGS BUNNY STEAL THE CARROTS?\n");
+    print("1)MR. NIXON'S, 2)ELMER FUDD'S, 3)CLEM JUDD'S, 4)STROMBOLI'S\n");
+    a = parseInt(await input());
+    if (a == 2) {
+        print("PRETTY GOOD!\n");
+        r++;
+    } else {
+        print("TOO BAD...IT WAS ELMER FUDD'S GARDEN.\n");
+    }
+    print("\n");
+    print("\n");
+    print("IN THE WIZARD OF OS, DOROTHY'S DOG WAS NAMED\n");
+    print("1)CICERO, 2)TRIXIA, 3)KING, 4)TOTO\n");
+    a = parseInt(await input());
+    if (a == 4) {
+        print("YEA!  YOU'RE A REAL LITERATURE GIANT.\n");
+        r++;
+    } else {
+        print("BACK TO THE BOOKS,...TOTO WAS HIS NAME.\n");
+    }
+    print("\n");
+    print("\n");
+    print("WHO WAS THE FAIR MAIDEN WHO ATE THE POISON APPLE\n");
+    print("1)SLEEPING BEAUTY, 2)CINDERELLA, 3)SNOW WHITE, 4)WENDY\n");
+    a = parseInt(await input());
+    if (a == 3) {
+        print("GOOD MEMORY!\n");
+        r++;
+    } else {
+        print("OH, COME ON NOW...IT WAS SNOW WHITE.\n");
+    }
+    print("\n");
+    print("\n");
+    if (r == 4) {
+        print("WOW!  THAT'S SUPER!  YOU REALLY KNOW YOUR NURSERY\n");
+        print("YOUR NEXT QUIZ WILL BE ON 2ND CENTURY CHINESE\n");
+        print("LITERATURE (HA, HA, HA)\n");
+    } else if (r < 2) {
+        print("UGH.  THAT WAS DEFINITELY NOT TOO SWIFT.  BACK TO\n");
+        print("NURSERY SCHOOL FOR YOU, MY FRIEND.\n");
+    } else {
+        print("NOT BAD, BUT YOU MIGHT SPEND A LITTLE MORE TIME\n");
+        print("READING THE NURSERY GREATS.\n");
+    }
+}
+
+main();
diff --git a/58 Love/javascript/love.html b/58 Love/javascript/love.html
new file mode 100644
index 00000000..ede593e8
--- /dev/null
+++ b/58 Love/javascript/love.html	
@@ -0,0 +1,9 @@
+
+
+LOVE
+
+
+

+
+
+
diff --git a/58 Love/javascript/love.js b/58 Love/javascript/love.js
new file mode 100644
index 00000000..d67c6acb
--- /dev/null
+++ b/58 Love/javascript/love.js	
@@ -0,0 +1,105 @@
+// LOVE
+//
+// Converted from BASIC to Javascript by Oscar Toledo G. (nanochess)
+//
+
+function print(str)
+{
+    document.getElementById("output").appendChild(document.createTextNode(str));
+}
+
+function input()
+{
+    var input_element;
+    var input_str;
+    
+    return new Promise(function (resolve) {
+                       input_element = document.createElement("INPUT");
+                       
+                       print("? ");
+                       input_element.setAttribute("type", "text");
+                       input_element.setAttribute("length", "50");
+                       document.getElementById("output").appendChild(input_element);
+                       input_element.focus();
+                       input_str = undefined;
+                       input_element.addEventListener("keydown", function (event) {
+                                                      if (event.keyCode == 13) {
+                                                      input_str = input_element.value;
+                                                      document.getElementById("output").removeChild(input_element);
+                                                      print(input_str);
+                                                      print("\n");
+                                                      resolve(input_str);
+                                                      }
+                                                      });
+                       });
+}
+
+function tab(space)
+{
+    var str = "";
+    while (space-- > 0)
+        str += " ";
+    return str;
+}
+
+var data = [60,1,12,26,9,12,3,8,24,17,8,4,6,23,21,6,4,6,22,12,5,6,5,
+            4,6,21,11,8,6,4,4,6,21,10,10,5,4,4,6,21,9,11,5,4,
+            4,6,21,8,11,6,4,4,6,21,7,11,7,4,4,6,21,6,11,8,4,
+            4,6,19,1,1,5,11,9,4,4,6,19,1,1,5,10,10,4,4,6,18,2,1,6,8,11,4,
+            4,6,17,3,1,7,5,13,4,4,6,15,5,2,23,5,1,29,5,17,8,
+            1,29,9,9,12,1,13,5,40,1,1,13,5,40,1,4,6,13,3,10,6,12,5,1,
+            5,6,11,3,11,6,14,3,1,5,6,11,3,11,6,15,2,1,
+            6,6,9,3,12,6,16,1,1,6,6,9,3,12,6,7,1,10,
+            7,6,7,3,13,6,6,2,10,7,6,7,3,13,14,10,8,6,5,3,14,6,6,2,10,
+            8,6,5,3,14,6,7,1,10,9,6,3,3,15,6,16,1,1,
+            9,6,3,3,15,6,15,2,1,10,6,1,3,16,6,14,3,1,10,10,16,6,12,5,1,
+            11,8,13,27,1,11,8,13,27,1,60];
+
+// Main program
+async function main()
+{
+    print(tab(33) + "LOVE\n");
+    print(tab(15) + "CREATIVE COMPUTING  MORRISTOWN, NEW JERSEY\n");
+    print("\n");
+    print("\n");
+    print("\n");
+    print("A TRIBUTE TO THE GREAT AMERICAN ARTIST, ROBERT INDIANA.\n");
+    print("HIS GREATEST WORK WILL BE REPRODUCED WITH A MESSAGE OF\n");
+    print("YOUR CHOICE UP TO 60 CHARACTERS.  IF YOU CAN'T THINK OF\n");
+    print("A MESSAGE, SIMPLE TYPE THE WORD 'LOVE'\n");
+    print("\n");
+    print("YOUR MESSAGE, PLEASE");
+    str = await input();
+    l = str.length;
+    ts = [];
+    for (i = 1; i <= 10; i++)
+        print("\n");
+    ts = "";
+    do {
+        ts += str;
+    } while (ts.length < 60) ;
+    pos = 0;
+    c = 0;
+    while (++c < 37) {
+        a1 = 1;
+        p = 1;
+        print("\n");
+        do {
+            a = data[pos++];
+            a1 += a;
+            if (p != 1) {
+                for (i = 1; i <= a; i++)
+                    print(" ");
+                p = 1;
+            } else {
+                for (i = a1 - a; i <= a1 - 1; i++)
+                    print(ts[i]);
+                p = 0;
+            }
+        } while (a1 <= 60) ;
+    }
+    for (i = 1; i <= 10; i++)
+        print("\n");
+}
+
+main();
diff --git a/61 Math Dice/javascript/mathdice.html b/61 Math Dice/javascript/mathdice.html
new file mode 100644
index 00000000..dfdf3f5f
--- /dev/null
+++ b/61 Math Dice/javascript/mathdice.html	
@@ -0,0 +1,9 @@
+
+
+MATH DICE
+
+
+

+
+
+
diff --git a/61 Math Dice/javascript/mathdice.js b/61 Math Dice/javascript/mathdice.js
new file mode 100644
index 00000000..f6ccda81
--- /dev/null
+++ b/61 Math Dice/javascript/mathdice.js	
@@ -0,0 +1,113 @@
+// MATH DICE
+//
+// Converted from BASIC to Javascript by Oscar Toledo G. (nanochess)
+//
+
+function print(str)
+{
+    document.getElementById("output").appendChild(document.createTextNode(str));
+}
+
+function input()
+{
+    var input_element;
+    var input_str;
+    
+    return new Promise(function (resolve) {
+                       input_element = document.createElement("INPUT");
+                       
+                       print("? ");
+                       input_element.setAttribute("type", "text");
+                       input_element.setAttribute("length", "50");
+                       document.getElementById("output").appendChild(input_element);
+                       input_element.focus();
+                       input_str = undefined;
+                       input_element.addEventListener("keydown", function (event) {
+                                                      if (event.keyCode == 13) {
+                                                      input_str = input_element.value;
+                                                      document.getElementById("output").removeChild(input_element);
+                                                      print(input_str);
+                                                      print("\n");
+                                                      resolve(input_str);
+                                                      }
+                                                      });
+                       });
+}
+
+function tab(space)
+{
+    var str = "";
+    while (space-- > 0)
+        str += " ";
+    return str;
+}
+
+// Main program
+async function main()
+{
+    print(tab(31) + "MATH DICE\n");
+    print(tab(15) + "CREATIVE COMPUTING  MORRISTOWN, NEW JERSEY\n");
+    print("\n");
+    print("\n");
+    print("\n");
+    print("THIS PROGRAM GENERATES SUCCESSIVE PICTURES OF TWO DICE.\n");
+    print("WHEN TWO DICE AND AN EQUAL SIGN FOLLOWED BY A QUESTION\n");
+    print("MARK HAVE BEEN PRINTED, TYPE YOUR ANSWER AND THE RETURN KEY.\n"),
+    print("TO CONCLUDE THE LESSON, TYPE ZERO AS YOUR ANSWER.\n");
+    print("\n");
+    print("\n");
+    n = 0;
+    while (1) {
+        n++;
+        d = Math.floor(6 * Math.random() + 1);
+        print(" ----- \n");
+        if (d == 1)
+            print("I     I\n");
+        else if (d == 2 || d == 3)
+            print("I *   I\n");
+        else
+            print("I * * I\n");
+        if (d == 2 || d == 4)
+            print("I     I\n");
+        else if (d == 6)
+            print("I * * I\n");
+        else
+            print("I  *  I\n");
+        if (d == 1)
+            print("I     I\n");
+        else if (d == 2 || d == 3)
+            print("I   * I\n");
+        else
+            print("I * * I\n");
+        print(" ----- \n");
+        print("\n");
+        if (n != 2) {
+            print("   +\n");
+            print("\n");
+            a = d;
+            continue;
+        }
+        t = d + a;
+        print("      =");
+        t1 = parseInt(await input());
+        if (t1 == 0)
+            break;
+        if (t1 != t) {
+            print("NO, COUNT THE SPOTS AND GIVE ANOTHER ANSWER.\n");
+            print("      =");
+            t1 = parseInt(await input());
+            if (t1 != t) {
+                print("NO, THE ANSWER IS " + t + "\n");
+            }
+        }
+        if (t1 == t) {
+            print("RIGHT!\n");
+        }
+        print("\n");
+        print("THE DICE ROLL AGAIN...\n");
+        print("\n");
+        n = 0;
+    }
+}
+
+main();
diff --git a/61 Math Dice/mathdice.bas b/61 Math Dice/mathdice.bas
index d61b060d..a62a7d8c 100644
--- a/61 Math Dice/mathdice.bas	
+++ b/61 Math Dice/mathdice.bas	
@@ -1,7 +1,7 @@
 10 PRINT TAB(31);"MATH DICE"
 20 PRINT TAB(15);"CREATIVE COMPUTING  MORRISTOWN, NEW JERSEY"
 30 PRINT:PRINT:PRINT
-40 PRINT "THIS PROGRAM GENERATES SUCCESIVE PICTURES OF TWO DICE."
+40 PRINT "THIS PROGRAM GENERATES SUCCESSIVE PICTURES OF TWO DICE."
 50 PRINT "WHEN TWO DICE AND AN EQUAL SIGN FOLLOWED BY A QUESTION"
 60 PRINT "MARK HAVE BEEN PRINTED, TYPE YOUR ANSWER AND THE RETURN KEY."
 70 PRINT "TO CONCLUDE THE LESSON, TYPE CONTROL-C AS YOUR ANSWER."