basic101 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.rspec +2 -0
- data/.simplecov +1 -0
- data/.yardopts +7 -0
- data/Changelog.md +3 -0
- data/Gemfile +12 -0
- data/Gemfile.lock +75 -0
- data/LICENSE.md +9 -0
- data/README.md +193 -0
- data/Rakefile +14 -0
- data/VERSION +1 -0
- data/bin/basic101 +10 -0
- data/lib/basic101/abs_function.rb +19 -0
- data/lib/basic101/argument_checker.rb +61 -0
- data/lib/basic101/arguments.rb +32 -0
- data/lib/basic101/array_reference.rb +52 -0
- data/lib/basic101/asc_function.rb +17 -0
- data/lib/basic101/basic_array.rb +69 -0
- data/lib/basic101/basic_comparisons.rb +20 -0
- data/lib/basic101/basic_float.rb +48 -0
- data/lib/basic101/basic_integer.rb +48 -0
- data/lib/basic101/basic_math.rb +22 -0
- data/lib/basic101/basic_numeric.rb +96 -0
- data/lib/basic101/basic_object.rb +35 -0
- data/lib/basic101/basic_string.rb +85 -0
- data/lib/basic101/binary_operation.rb +32 -0
- data/lib/basic101/binary_operations.rb +26 -0
- data/lib/basic101/built_in_functions.rb +31 -0
- data/lib/basic101/chr_function.rb +17 -0
- data/lib/basic101/cos_function.rb +17 -0
- data/lib/basic101/data_statement.rb +24 -0
- data/lib/basic101/define_function_statement.rb +23 -0
- data/lib/basic101/dim_statement.rb +25 -0
- data/lib/basic101/else_statement.rb +22 -0
- data/lib/basic101/end_statement.rb +13 -0
- data/lib/basic101/endif_statement.rb +19 -0
- data/lib/basic101/errors.rb +50 -0
- data/lib/basic101/exp_function.rb +17 -0
- data/lib/basic101/for_stack.rb +48 -0
- data/lib/basic101/for_statement.rb +57 -0
- data/lib/basic101/function.rb +11 -0
- data/lib/basic101/function_call.rb +32 -0
- data/lib/basic101/function_identifier.rb +8 -0
- data/lib/basic101/functions.rb +39 -0
- data/lib/basic101/gosub_statement.rb +23 -0
- data/lib/basic101/goto_statement.rb +23 -0
- data/lib/basic101/identifier.rb +23 -0
- data/lib/basic101/identity.rb +18 -0
- data/lib/basic101/if_statement.rb +31 -0
- data/lib/basic101/input.rb +44 -0
- data/lib/basic101/input_reader.rb +55 -0
- data/lib/basic101/input_statement.rb +46 -0
- data/lib/basic101/int_function.rb +17 -0
- data/lib/basic101/left_function.rb +19 -0
- data/lib/basic101/len_function.rb +18 -0
- data/lib/basic101/let_statement.rb +24 -0
- data/lib/basic101/line.rb +32 -0
- data/lib/basic101/log_function.rb +17 -0
- data/lib/basic101/main.rb +24 -0
- data/lib/basic101/mid_function.rb +20 -0
- data/lib/basic101/negate_operation.rb +21 -0
- data/lib/basic101/next_statement.rb +34 -0
- data/lib/basic101/not_operation.rb +23 -0
- data/lib/basic101/null_prompt_delimeter.rb +12 -0
- data/lib/basic101/null_transcript.rb +20 -0
- data/lib/basic101/numeric_identifier.rb +16 -0
- data/lib/basic101/on_goto_statement.rb +29 -0
- data/lib/basic101/output.rb +73 -0
- data/lib/basic101/parser.rb +457 -0
- data/lib/basic101/power_operation.rb +24 -0
- data/lib/basic101/print_comma.rb +20 -0
- data/lib/basic101/print_semicolon.rb +19 -0
- data/lib/basic101/print_statement.rb +33 -0
- data/lib/basic101/program.rb +100 -0
- data/lib/basic101/program_counter.rb +52 -0
- data/lib/basic101/prompt_delimeter.rb +13 -0
- data/lib/basic101/randomize_statement.rb +13 -0
- data/lib/basic101/read_statement.rb +25 -0
- data/lib/basic101/reference.rb +25 -0
- data/lib/basic101/remark_statement.rb +12 -0
- data/lib/basic101/restore_statement.rb +23 -0
- data/lib/basic101/return_statement.rb +16 -0
- data/lib/basic101/right_function.rb +19 -0
- data/lib/basic101/rnd_function.rb +24 -0
- data/lib/basic101/runtime.rb +132 -0
- data/lib/basic101/scalar_reference.rb +19 -0
- data/lib/basic101/sgn_function.rb +17 -0
- data/lib/basic101/sin_function.rb +17 -0
- data/lib/basic101/sqr_function.rb +17 -0
- data/lib/basic101/statement.rb +36 -0
- data/lib/basic101/stop_statement.rb +14 -0
- data/lib/basic101/str_function.rb +16 -0
- data/lib/basic101/string_identifier.rb +16 -0
- data/lib/basic101/tab.rb +18 -0
- data/lib/basic101/tab_function.rb +17 -0
- data/lib/basic101/tan_function.rb +17 -0
- data/lib/basic101/transcript.rb +37 -0
- data/lib/basic101/transform.rb +264 -0
- data/lib/basic101/user_defined_function.rb +54 -0
- data/lib/basic101/val_function.rb +16 -0
- data/lib/basic101.rb +93 -0
- data/rake_tasks/default.rake +1 -0
- data/rake_tasks/integration.rake +8 -0
- data/rake_tasks/jeweler.rake +28 -0
- data/rake_tasks/spec.rake +8 -0
- data/rake_tasks/test.rake +2 -0
- data/rake_tasks/yard.rake +3 -0
- data/test/integration/arguments.rb +25 -0
- data/test/integration/errors.rb +7 -0
- data/test/integration/integration_test.rb +28 -0
- data/test/integration/main.rb +49 -0
- data/test/integration/output_file.rb +40 -0
- data/test/integration/test.rb +135 -0
- data/test/integration/tests/basic_computer_games/23-match.bas +64 -0
- data/test/integration/tests/basic_computer_games/23-match.input +1 -0
- data/test/integration/tests/basic_computer_games/23-match.output +29 -0
- data/test/integration/tests/basic_computer_games/3dplot.bas +17 -0
- data/test/integration/tests/basic_computer_games/3dplot.input +0 -0
- data/test/integration/tests/basic_computer_games/3dplot.output +47 -0
- data/test/integration/tests/basic_computer_games/aceyducy.bas +100 -0
- data/test/integration/tests/basic_computer_games/aceyducy.input +8 -0
- data/test/integration/tests/basic_computer_games/aceyducy.output +78 -0
- data/test/integration/tests/basic_computer_games/amazing.bas +138 -0
- data/test/integration/tests/basic_computer_games/amazing.input +1 -0
- data/test/integration/tests/basic_computer_games/amazing.output +32 -0
- data/test/integration/tests/basic_computer_games/animal.bas +71 -0
- data/test/integration/tests/basic_computer_games/animal.input +17 -0
- data/test/integration/tests/basic_computer_games/animal.output +38 -0
- data/test/integration/tests/basic_computer_games/awari.bas +70 -0
- data/test/integration/tests/basic_computer_games/awari.input +11 -0
- data/test/integration/tests/basic_computer_games/awari.output +117 -0
- data/test/integration/tests/basic_computer_games/bagels.bas +81 -0
- data/test/integration/tests/basic_computer_games/bagels.input +12 -0
- data/test/integration/tests/basic_computer_games/bagels.output +42 -0
- data/test/integration/tests/basic_computer_games/banner.bas +94 -0
- data/test/integration/tests/basic_computer_games/banner.input +6 -0
- data/test/integration/tests/basic_computer_games/banner.output +135 -0
- data/test/integration/tests/basic_computer_games/basketbl.bas +196 -0
- data/test/integration/tests/basic_computer_games/basketbl.input +46 -0
- data/test/integration/tests/basic_computer_games/basketbl.output +509 -0
- data/test/integration/tests/basic_computer_games/batnum.bas +90 -0
- data/test/integration/tests/basic_computer_games/batnum.input +14 -0
- data/test/integration/tests/basic_computer_games/batnum.output +67 -0
- data/test/integration/tests/basic_computer_games/battle.bas +196 -0
- data/test/integration/tests/basic_computer_games/battle.input +21 -0
- data/test/integration/tests/basic_computer_games/battle.output +118 -0
- data/test/integration/tests/basic_computer_games/blackjck.bas +321 -0
- data/test/integration/tests/basic_computer_games/blackjck.input +26 -0
- data/test/integration/tests/basic_computer_games/blackjck.output +144 -0
- data/test/integration/tests/basic_computer_games/bombard.bas +93 -0
- data/test/integration/tests/basic_computer_games/bombard.input +20 -0
- data/test/integration/tests/basic_computer_games/bombard.output +175 -0
- data/test/integration/tests/basic_computer_games/bounce.bas +53 -0
- data/test/integration/tests/basic_computer_games/bounce.input +0 -0
- data/test/integration/tests/basic_computer_games/bounce.output +15 -0
- data/test/integration/tests/basic_computer_games/bowling.bas +101 -0
- data/test/integration/tests/basic_computer_games/bowling.input +23 -0
- data/test/integration/tests/basic_computer_games/bowling.output +229 -0
- data/test/integration/tests/basic_computer_games/boxing.bas +142 -0
- data/test/integration/tests/basic_computer_games/boxing.input +8 -0
- data/test/integration/tests/basic_computer_games/boxing.output +47 -0
- data/test/integration/tests/basic_computer_games/bug.bas +256 -0
- data/test/integration/tests/basic_computer_games/bug.input +17 -0
- data/test/integration/tests/basic_computer_games/bug.output +847 -0
- data/test/integration/tests/basic_computer_games/bullfght.bas +193 -0
- data/test/integration/tests/basic_computer_games/bullfght.input +4 -0
- data/test/integration/tests/basic_computer_games/bullfght.output +60 -0
- data/test/integration/tests/basic_computer_games/bullseye.bas +37 -0
- data/test/integration/tests/basic_computer_games/bullseye.input +10 -0
- data/test/integration/tests/basic_computer_games/bullseye.output +79 -0
- data/test/integration/tests/basic_computer_games/bunny.bas +40 -0
- data/test/integration/tests/basic_computer_games/bunny.input +0 -0
- data/test/integration/tests/basic_computer_games/bunny.output +67 -0
- data/test/integration/tests/basic_computer_games/buzzword.bas +25 -0
- data/test/integration/tests/basic_computer_games/buzzword.input +4 -0
- data/test/integration/tests/basic_computer_games/buzzword.output +25 -0
- data/test/integration/tests/basic_computer_games/calendar.bas +58 -0
- data/test/integration/tests/basic_computer_games/calendar.input +0 -0
- data/test/integration/tests/basic_computer_games/calendar.output +213 -0
- data/test/integration/tests/basic_computer_games/change.bas +51 -0
- data/test/integration/tests/basic_computer_games/change.input +4 -0
- data/test/integration/tests/basic_computer_games/change.output +28 -0
- data/test/integration/tests/basic_computer_games/checkers.bas +82 -0
- data/test/integration/tests/basic_computer_games/checkers.input +74 -0
- data/test/integration/tests/basic_computer_games/checkers.output +673 -0
- data/test/integration/tests/basic_computer_games/chemist.bas +27 -0
- data/test/integration/tests/basic_computer_games/chemist.input +11 -0
- data/test/integration/tests/basic_computer_games/chemist.output +54 -0
- data/test/integration/tests/basic_computer_games/chief.bas +51 -0
- data/test/integration/tests/basic_computer_games/chief.input +5 -0
- data/test/integration/tests/basic_computer_games/chief.output +19 -0
- data/test/integration/tests/basic_computer_games/chomp.bas +104 -0
- data/test/integration/tests/basic_computer_games/chomp.input +15 -0
- data/test/integration/tests/basic_computer_games/chomp.output +159 -0
- data/test/integration/tests/basic_computer_games/combat.bas +124 -0
- data/test/integration/tests/basic_computer_games/combat.input +7 -0
- data/test/integration/tests/basic_computer_games/combat.output +33 -0
- data/test/integration/tests/basic_computer_games/craps.bas +82 -0
- data/test/integration/tests/basic_computer_games/craps.input +9 -0
- data/test/integration/tests/basic_computer_games/craps.output +51 -0
- data/test/integration/tests/basic_computer_games/cube.bas +161 -0
- data/test/integration/tests/basic_computer_games/cube.input +25 -0
- data/test/integration/tests/basic_computer_games/cube.output +72 -0
- data/test/integration/tests/basic_computer_games/depthchg.bas +33 -0
- data/test/integration/tests/basic_computer_games/depthchg.input +16 -0
- data/test/integration/tests/basic_computer_games/depthchg.output +83 -0
- data/test/integration/tests/basic_computer_games/diamond.bas +27 -0
- data/test/integration/tests/basic_computer_games/diamond.input +1 -0
- data/test/integration/tests/basic_computer_games/diamond.output +65 -0
- data/test/integration/tests/basic_computer_games/dice.bas +31 -0
- data/test/integration/tests/basic_computer_games/dice.input +4 -0
- data/test/integration/tests/basic_computer_games/dice.output +46 -0
- data/test/integration/tests/basic_computer_games/digits.bas +78 -0
- data/test/integration/tests/basic_computer_games/digits.input +5 -0
- data/test/integration/tests/basic_computer_games/digits.output +70 -0
- data/test/integration/tests/basic_computer_games/evenwin1.bas +128 -0
- data/test/integration/tests/basic_computer_games/evenwin1.input +13 -0
- data/test/integration/tests/basic_computer_games/evenwin1.output +116 -0
- data/test/integration/tests/basic_computer_games/evenwin2.bas +70 -0
- data/test/integration/tests/basic_computer_games/evenwin2.input +14 -0
- data/test/integration/tests/basic_computer_games/evenwin2.output +56 -0
- data/test/integration/tests/basic_computer_games/flipflop.bas +79 -0
- data/test/integration/tests/basic_computer_games/flipflop.input +8 -0
- data/test/integration/tests/basic_computer_games/flipflop.output +45 -0
- data/test/integration/tests/basic_computer_games/footbal1.bas +298 -0
- data/test/integration/tests/basic_computer_games/footbal1.input +13 -0
- data/test/integration/tests/basic_computer_games/footbal1.output +315 -0
- data/test/integration/tests/basic_computer_games/footbal2.bas +181 -0
- data/test/integration/tests/basic_computer_games/footbal2.input +23 -0
- data/test/integration/tests/basic_computer_games/footbal2.output +318 -0
- data/test/integration/tests/basic_computer_games/furtradr.bas +170 -0
- data/test/integration/tests/basic_computer_games/furtradr.input +20 -0
- data/test/integration/tests/basic_computer_games/furtradr.output +133 -0
- data/test/integration/tests/basic_computer_games/golf.bas +244 -0
- data/test/integration/tests/basic_computer_games/golf.input +11 -0
- data/test/integration/tests/basic_computer_games/golf.output +69 -0
- data/test/integration/tests/basic_computer_games/gomoko.bas +54 -0
- data/test/integration/tests/basic_computer_games/gomoko.input +6 -0
- data/test/integration/tests/basic_computer_games/gomoko.output +66 -0
- data/test/integration/tests/basic_computer_games/guess.bas +40 -0
- data/test/integration/tests/basic_computer_games/guess.input +8 -0
- data/test/integration/tests/basic_computer_games/guess.output +37 -0
- data/test/integration/tests/basic_computer_games/gunner.bas +52 -0
- data/test/integration/tests/basic_computer_games/gunner.input +18 -0
- data/test/integration/tests/basic_computer_games/gunner.output +91 -0
- data/test/integration/tests/basic_computer_games/hamurabi.bas +119 -0
- data/test/integration/tests/basic_computer_games/hamurabi.input +7 -0
- data/test/integration/tests/basic_computer_games/hamurabi.output +51 -0
- data/test/integration/tests/basic_computer_games/hangman.bas +81 -0
- data/test/integration/tests/basic_computer_games/hangman.input +69 -0
- data/test/integration/tests/basic_computer_games/hangman.output +889 -0
- data/test/integration/tests/basic_computer_games/hello.bas +83 -0
- data/test/integration/tests/basic_computer_games/hello.input +7 -0
- data/test/integration/tests/basic_computer_games/hello.output +46 -0
- data/test/integration/tests/basic_computer_games/hexapawn.bas +174 -0
- data/test/integration/tests/basic_computer_games/hexapawn.input +38 -0
- data/test/integration/tests/basic_computer_games/hexapawn.output +521 -0
- data/test/integration/tests/basic_computer_games/hi-q.bas +135 -0
- data/test/integration/tests/basic_computer_games/hi-q.input +14 -0
- data/test/integration/tests/basic_computer_games/hi-q.output +115 -0
- data/test/integration/tests/basic_computer_games/hilo.bas +29 -0
- data/test/integration/tests/basic_computer_games/hilo.input +20 -0
- data/test/integration/tests/basic_computer_games/hilo.output +76 -0
- data/test/integration/tests/basic_computer_games/hockey.bas +210 -0
- data/test/integration/tests/basic_computer_games/hockey.input +59 -0
- data/test/integration/tests/basic_computer_games/hockey.output +243 -0
- data/test/integration/tests/basic_computer_games/horsrace.bas +130 -0
- data/test/integration/tests/basic_computer_games/horsrace.input +11 -0
- data/test/integration/tests/basic_computer_games/horsrace.output +517 -0
- data/test/integration/tests/basic_computer_games/hurkle.bas +51 -0
- data/test/integration/tests/basic_computer_games/hurkle.input +16 -0
- data/test/integration/tests/basic_computer_games/hurkle.output +81 -0
- data/test/integration/tests/basic_computer_games/kinema.bas +34 -0
- data/test/integration/tests/basic_computer_games/kinema.input +9 -0
- data/test/integration/tests/basic_computer_games/kinema.output +64 -0
- data/test/integration/tests/basic_computer_games/king.bas +268 -0
- data/test/integration/tests/basic_computer_games/king.input +7 -0
- data/test/integration/tests/basic_computer_games/king.output +57 -0
- data/test/integration/tests/basic_computer_games/lem.bas +246 -0
- data/test/integration/tests/basic_computer_games/lem.input +4 -0
- data/test/integration/tests/basic_computer_games/lem.output +68 -0
- data/test/integration/tests/basic_computer_games/letter.bas +26 -0
- data/test/integration/tests/basic_computer_games/letter.input +24 -0
- data/test/integration/tests/basic_computer_games/letter.output +123 -0
- data/test/integration/tests/basic_computer_games/life.bas +66 -0
- data/test/integration/tests/basic_computer_games/life.input +4 -0
- data/test/integration/tests/basic_computer_games/life.options +1 -0
- data/test/integration/tests/basic_computer_games/life.output +200 -0
- data/test/integration/tests/basic_computer_games/life2.bas +83 -0
- data/test/integration/tests/basic_computer_games/life2.input +17 -0
- data/test/integration/tests/basic_computer_games/life2.output +113 -0
- data/test/integration/tests/basic_computer_games/litquiz.bas +49 -0
- data/test/integration/tests/basic_computer_games/litquiz.input +4 -0
- data/test/integration/tests/basic_computer_games/litquiz.output +36 -0
- data/test/integration/tests/basic_computer_games/love.bas +34 -0
- data/test/integration/tests/basic_computer_games/love.input +1 -0
- data/test/integration/tests/basic_computer_games/love.output +67 -0
- data/test/integration/tests/basic_computer_games/lunar.bas +48 -0
- data/test/integration/tests/basic_computer_games/lunar.input +87 -0
- data/test/integration/tests/basic_computer_games/lunar.output +195 -0
- data/test/integration/tests/basic_computer_games/mastrmnd.bas +232 -0
- data/test/integration/tests/basic_computer_games/mastrmnd.input +18 -0
- data/test/integration/tests/basic_computer_games/mastrmnd.output +67 -0
- data/test/integration/tests/basic_computer_games/mathdice.bas +60 -0
- data/test/integration/tests/basic_computer_games/mathdice.input +4 -0
- data/test/integration/tests/basic_computer_games/mathdice.output +86 -0
- data/test/integration/tests/basic_computer_games/mugwump.bas +56 -0
- data/test/integration/tests/basic_computer_games/mugwump.input +16 -0
- data/test/integration/tests/basic_computer_games/mugwump.output +139 -0
- data/test/integration/tests/basic_computer_games/name.bas +25 -0
- data/test/integration/tests/basic_computer_games/name.input +2 -0
- data/test/integration/tests/basic_computer_games/name.output +22 -0
- data/test/integration/tests/basic_computer_games/nicoma.bas +34 -0
- data/test/integration/tests/basic_computer_games/nicoma.input +8 -0
- data/test/integration/tests/basic_computer_games/nicoma.output +36 -0
- data/test/integration/tests/basic_computer_games/nim.bas +156 -0
- data/test/integration/tests/basic_computer_games/nim.input +8 -0
- data/test/integration/tests/basic_computer_games/nim.output +30 -0
- data/test/integration/tests/basic_computer_games/number.bas +37 -0
- data/test/integration/tests/basic_computer_games/number.input +19 -0
- data/test/integration/tests/basic_computer_games/number.output +73 -0
- data/test/integration/tests/basic_computer_games/onecheck.bas +86 -0
- data/test/integration/tests/basic_computer_games/onecheck.input +6 -0
- data/test/integration/tests/basic_computer_games/onecheck.output +77 -0
- data/test/integration/tests/basic_computer_games/orbit.bas +96 -0
- data/test/integration/tests/basic_computer_games/orbit.input +10 -0
- data/test/integration/tests/basic_computer_games/orbit.output +113 -0
- data/test/integration/tests/basic_computer_games/pizza.bas +68 -0
- data/test/integration/tests/basic_computer_games/pizza.input +10 -0
- data/test/integration/tests/basic_computer_games/pizza.output +93 -0
- data/test/integration/tests/basic_computer_games/poetry.bas +42 -0
- data/test/integration/tests/basic_computer_games/poetry.input +0 -0
- data/test/integration/tests/basic_computer_games/poetry.options +1 -0
- data/test/integration/tests/basic_computer_games/poetry.output +50 -0
- data/test/integration/tests/basic_computer_games/poker.bas +416 -0
- data/test/integration/tests/basic_computer_games/poker.input +34 -0
- data/test/integration/tests/basic_computer_games/poker.output +197 -0
- data/test/integration/tests/basic_computer_games/queen.bas +168 -0
- data/test/integration/tests/basic_computer_games/queen.input +10 -0
- data/test/integration/tests/basic_computer_games/queen.output +133 -0
- data/test/integration/tests/basic_computer_games/reverse.bas +62 -0
- data/test/integration/tests/basic_computer_games/reverse.input +12 -0
- data/test/integration/tests/basic_computer_games/reverse.output +79 -0
- data/test/integration/tests/basic_computer_games/rocket.bas +71 -0
- data/test/integration/tests/basic_computer_games/rocket.input +42 -0
- data/test/integration/tests/basic_computer_games/rocket.output +149 -0
- data/test/integration/tests/basic_computer_games/rocksp.bas +33 -0
- data/test/integration/tests/basic_computer_games/rocksp.input +9 -0
- data/test/integration/tests/basic_computer_games/rocksp.output +69 -0
- data/test/integration/tests/basic_computer_games/roulette.bas +239 -0
- data/test/integration/tests/basic_computer_games/roulette.input +9 -0
- data/test/integration/tests/basic_computer_games/roulette.output +98 -0
- data/test/integration/tests/basic_computer_games/rusrou.bas +26 -0
- data/test/integration/tests/basic_computer_games/rusrou.input +9 -0
- data/test/integration/tests/basic_computer_games/rusrou.output +50 -0
- data/test/integration/tests/basic_computer_games/salvo.bas +329 -0
- data/test/integration/tests/basic_computer_games/salvo.input +21 -0
- data/test/integration/tests/basic_computer_games/salvo.output +49 -0
- data/test/integration/tests/basic_computer_games/sinewave.bas +17 -0
- data/test/integration/tests/basic_computer_games/sinewave.input +0 -0
- data/test/integration/tests/basic_computer_games/sinewave.output +168 -0
- data/test/integration/tests/basic_computer_games/slalom.bas +165 -0
- data/test/integration/tests/basic_computer_games/slalom.input +20 -0
- data/test/integration/tests/basic_computer_games/slalom.output +122 -0
- data/test/integration/tests/basic_computer_games/slots.bas +134 -0
- data/test/integration/tests/basic_computer_games/slots.input +2 -0
- data/test/integration/tests/basic_computer_games/slots.output +20 -0
- data/test/integration/tests/basic_computer_games/splat.bas +128 -0
- data/test/integration/tests/basic_computer_games/splat.input +9 -0
- data/test/integration/tests/basic_computer_games/splat.output +61 -0
- data/test/integration/tests/basic_computer_games/stars.bas +54 -0
- data/test/integration/tests/basic_computer_games/stars.input +15 -0
- data/test/integration/tests/basic_computer_games/stars.output +70 -0
- data/test/integration/tests/basic_computer_games/stock.bas +232 -0
- data/test/integration/tests/basic_computer_games/stock.input +30 -0
- data/test/integration/tests/basic_computer_games/stock.output +156 -0
- data/test/integration/tests/basic_computer_games/superstartrek.bas +425 -0
- data/test/integration/tests/basic_computer_games/superstartrek.input +21 -0
- data/test/integration/tests/basic_computer_games/superstartrek.output +151 -0
- data/test/integration/tests/basic_computer_games/superstartrekins.bas +127 -0
- data/test/integration/tests/basic_computer_games/superstartrekins.input +1 -0
- data/test/integration/tests/basic_computer_games/superstartrekins.output +134 -0
- data/test/integration/tests/basic_computer_games/synonym.bas +53 -0
- data/test/integration/tests/basic_computer_games/synonym.input +13 -0
- data/test/integration/tests/basic_computer_games/synonym.output +57 -0
- data/test/integration/tests/basic_computer_games/target.bas +51 -0
- data/test/integration/tests/basic_computer_games/target.input +2 -0
- data/test/integration/tests/basic_computer_games/target.output +39 -0
- data/test/integration/tests/basic_computer_games/tictac1.bas +69 -0
- data/test/integration/tests/basic_computer_games/tictac1.input +10 -0
- data/test/integration/tests/basic_computer_games/tictac1.output +49 -0
- data/test/integration/tests/basic_computer_games/tictac2.bas +114 -0
- data/test/integration/tests/basic_computer_games/tictac2.input +6 -0
- data/test/integration/tests/basic_computer_games/tictac2.output +104 -0
- data/test/integration/tests/basic_computer_games/towers.bas +125 -0
- data/test/integration/tests/basic_computer_games/towers.input +9 -0
- data/test/integration/tests/basic_computer_games/towers.output +70 -0
- data/test/integration/tests/basic_computer_games/train.bas +24 -0
- data/test/integration/tests/basic_computer_games/train.input +4 -0
- data/test/integration/tests/basic_computer_games/train.output +23 -0
- data/test/integration/tests/basic_computer_games/trap.bas +49 -0
- data/test/integration/tests/basic_computer_games/trap.input +7 -0
- data/test/integration/tests/basic_computer_games/trap.output +40 -0
- data/test/integration/tests/basic_computer_games/war.bas +68 -0
- data/test/integration/tests/basic_computer_games/war.input +11 -0
- data/test/integration/tests/basic_computer_games/war.output +54 -0
- data/test/integration/tests/basic_computer_games/weekday.bas +150 -0
- data/test/integration/tests/basic_computer_games/weekday.input +2 -0
- data/test/integration/tests/basic_computer_games/weekday.output +28 -0
- data/test/integration/tests/basic_computer_games/word.bas +65 -0
- data/test/integration/tests/basic_computer_games/word.input +6 -0
- data/test/integration/tests/basic_computer_games/word.output +0 -0
- data/test/integration/tests/fast/abs.bas +5 -0
- data/test/integration/tests/fast/abs.input +0 -0
- data/test/integration/tests/fast/abs.output +5 -0
- data/test/integration/tests/fast/add.bas +5 -0
- data/test/integration/tests/fast/add.input +0 -0
- data/test/integration/tests/fast/add.output +5 -0
- data/test/integration/tests/fast/and.bas +5 -0
- data/test/integration/tests/fast/and.input +0 -0
- data/test/integration/tests/fast/and.output +5 -0
- data/test/integration/tests/fast/array.bas +11 -0
- data/test/integration/tests/fast/array.input +0 -0
- data/test/integration/tests/fast/array.output +6 -0
- data/test/integration/tests/fast/asc.bas +1 -0
- data/test/integration/tests/fast/asc.input +0 -0
- data/test/integration/tests/fast/asc.output +1 -0
- data/test/integration/tests/fast/chr.bas +1 -0
- data/test/integration/tests/fast/chr.input +0 -0
- data/test/integration/tests/fast/chr.output +1 -0
- data/test/integration/tests/fast/cos.bas +1 -0
- data/test/integration/tests/fast/cos.input +0 -0
- data/test/integration/tests/fast/cos.output +1 -0
- data/test/integration/tests/fast/def_fn.bas +9 -0
- data/test/integration/tests/fast/def_fn.input +0 -0
- data/test/integration/tests/fast/def_fn.output +5 -0
- data/test/integration/tests/fast/divide.bas +5 -0
- data/test/integration/tests/fast/divide.input +0 -0
- data/test/integration/tests/fast/divide.output +5 -0
- data/test/integration/tests/fast/end.bas +3 -0
- data/test/integration/tests/fast/end.input +0 -0
- data/test/integration/tests/fast/end.output +1 -0
- data/test/integration/tests/fast/eq.bas +3 -0
- data/test/integration/tests/fast/eq.input +0 -0
- data/test/integration/tests/fast/eq.output +3 -0
- data/test/integration/tests/fast/exp.bas +2 -0
- data/test/integration/tests/fast/exp.input +0 -0
- data/test/integration/tests/fast/exp.output +2 -0
- data/test/integration/tests/fast/float.bas +3 -0
- data/test/integration/tests/fast/float.input +0 -0
- data/test/integration/tests/fast/float.output +2 -0
- data/test/integration/tests/fast/for_next.bas +61 -0
- data/test/integration/tests/fast/for_next.input +0 -0
- data/test/integration/tests/fast/for_next.output +46 -0
- data/test/integration/tests/fast/ge.bas +3 -0
- data/test/integration/tests/fast/ge.input +0 -0
- data/test/integration/tests/fast/ge.output +3 -0
- data/test/integration/tests/fast/gosub_return.bas +10 -0
- data/test/integration/tests/fast/gosub_return.input +0 -0
- data/test/integration/tests/fast/gosub_return.output +4 -0
- data/test/integration/tests/fast/goto.bas +3 -0
- data/test/integration/tests/fast/goto.input +0 -0
- data/test/integration/tests/fast/goto.output +1 -0
- data/test/integration/tests/fast/gt.bas +3 -0
- data/test/integration/tests/fast/gt.input +0 -0
- data/test/integration/tests/fast/gt.output +3 -0
- data/test/integration/tests/fast/if.bas +25 -0
- data/test/integration/tests/fast/if.input +0 -0
- data/test/integration/tests/fast/if.output +8 -0
- data/test/integration/tests/fast/input.bas +24 -0
- data/test/integration/tests/fast/input.input +10 -0
- data/test/integration/tests/fast/input.output +28 -0
- data/test/integration/tests/fast/int.bas +5 -0
- data/test/integration/tests/fast/int.input +0 -0
- data/test/integration/tests/fast/int.output +5 -0
- data/test/integration/tests/fast/integer_plus_string.bas +1 -0
- data/test/integration/tests/fast/integer_plus_string.input +0 -0
- data/test/integration/tests/fast/integer_plus_string.output +1 -0
- data/test/integration/tests/fast/invalid_argument.bas +1 -0
- data/test/integration/tests/fast/invalid_argument.input +0 -0
- data/test/integration/tests/fast/invalid_argument.output +1 -0
- data/test/integration/tests/fast/le.bas +3 -0
- data/test/integration/tests/fast/le.input +0 -0
- data/test/integration/tests/fast/le.output +3 -0
- data/test/integration/tests/fast/left.bas +1 -0
- data/test/integration/tests/fast/left.input +0 -0
- data/test/integration/tests/fast/left.output +1 -0
- data/test/integration/tests/fast/len.bas +2 -0
- data/test/integration/tests/fast/len.input +0 -0
- data/test/integration/tests/fast/len.output +2 -0
- data/test/integration/tests/fast/let.bas +6 -0
- data/test/integration/tests/fast/let.input +0 -0
- data/test/integration/tests/fast/let.output +4 -0
- data/test/integration/tests/fast/log.bas +1 -0
- data/test/integration/tests/fast/log.input +0 -0
- data/test/integration/tests/fast/log.output +1 -0
- data/test/integration/tests/fast/lt.bas +3 -0
- data/test/integration/tests/fast/lt.input +0 -0
- data/test/integration/tests/fast/lt.output +3 -0
- data/test/integration/tests/fast/math.output +0 -0
- data/test/integration/tests/fast/mid.bas +2 -0
- data/test/integration/tests/fast/mid.input +0 -0
- data/test/integration/tests/fast/mid.output +2 -0
- data/test/integration/tests/fast/multiply.bas +5 -0
- data/test/integration/tests/fast/multiply.input +0 -0
- data/test/integration/tests/fast/multiply.output +5 -0
- data/test/integration/tests/fast/ne.bas +3 -0
- data/test/integration/tests/fast/ne.input +0 -0
- data/test/integration/tests/fast/ne.output +3 -0
- data/test/integration/tests/fast/negate.bas +4 -0
- data/test/integration/tests/fast/negate.input +0 -0
- data/test/integration/tests/fast/negate.output +3 -0
- data/test/integration/tests/fast/not.bas +4 -0
- data/test/integration/tests/fast/not.input +0 -0
- data/test/integration/tests/fast/not.output +4 -0
- data/test/integration/tests/fast/on_goto.bas +6 -0
- data/test/integration/tests/fast/on_goto.input +0 -0
- data/test/integration/tests/fast/on_goto.output +2 -0
- data/test/integration/tests/fast/or.bas +5 -0
- data/test/integration/tests/fast/or.input +0 -0
- data/test/integration/tests/fast/or.output +5 -0
- data/test/integration/tests/fast/parentheses.bas +1 -0
- data/test/integration/tests/fast/parentheses.input +0 -0
- data/test/integration/tests/fast/parentheses.output +1 -0
- data/test/integration/tests/fast/power.bas +4 -0
- data/test/integration/tests/fast/power.input +0 -0
- data/test/integration/tests/fast/power.output +4 -0
- data/test/integration/tests/fast/print.bas +6 -0
- data/test/integration/tests/fast/print.input +0 -0
- data/test/integration/tests/fast/print.output +4 -0
- data/test/integration/tests/fast/read_data.bas +15 -0
- data/test/integration/tests/fast/read_data.input +0 -0
- data/test/integration/tests/fast/read_data.output +4 -0
- data/test/integration/tests/fast/rem.bas +1 -0
- data/test/integration/tests/fast/rem.input +0 -0
- data/test/integration/tests/fast/rem.output +0 -0
- data/test/integration/tests/fast/right.bas +1 -0
- data/test/integration/tests/fast/right.input +0 -0
- data/test/integration/tests/fast/right.output +1 -0
- data/test/integration/tests/fast/rnd.bas +5 -0
- data/test/integration/tests/fast/rnd.input +0 -0
- data/test/integration/tests/fast/rnd.output +5 -0
- data/test/integration/tests/fast/sgn.bas +5 -0
- data/test/integration/tests/fast/sgn.input +0 -0
- data/test/integration/tests/fast/sgn.output +5 -0
- data/test/integration/tests/fast/sin.bas +1 -0
- data/test/integration/tests/fast/sin.input +0 -0
- data/test/integration/tests/fast/sin.output +1 -0
- data/test/integration/tests/fast/sqr.bas +2 -0
- data/test/integration/tests/fast/sqr.input +0 -0
- data/test/integration/tests/fast/sqr.output +2 -0
- data/test/integration/tests/fast/stop.bas +3 -0
- data/test/integration/tests/fast/stop.input +0 -0
- data/test/integration/tests/fast/stop.output +2 -0
- data/test/integration/tests/fast/str.bas +3 -0
- data/test/integration/tests/fast/str.input +0 -0
- data/test/integration/tests/fast/str.output +3 -0
- data/test/integration/tests/fast/string_addition.bas +1 -0
- data/test/integration/tests/fast/string_addition.input +0 -0
- data/test/integration/tests/fast/string_addition.output +1 -0
- data/test/integration/tests/fast/string_comparisons.bas +7 -0
- data/test/integration/tests/fast/string_comparisons.input +0 -0
- data/test/integration/tests/fast/string_comparisons.output +4 -0
- data/test/integration/tests/fast/string_plus_integer.bas +1 -0
- data/test/integration/tests/fast/string_plus_integer.input +0 -0
- data/test/integration/tests/fast/string_plus_integer.output +1 -0
- data/test/integration/tests/fast/subtract.bas +5 -0
- data/test/integration/tests/fast/subtract.input +0 -0
- data/test/integration/tests/fast/subtract.output +5 -0
- data/test/integration/tests/fast/tab.bas +4 -0
- data/test/integration/tests/fast/tab.input +0 -0
- data/test/integration/tests/fast/tab.output +3 -0
- data/test/integration/tests/fast/tan.bas +1 -0
- data/test/integration/tests/fast/tan.input +0 -0
- data/test/integration/tests/fast/tan.output +1 -0
- data/test/integration/tests/fast/val.bas +3 -0
- data/test/integration/tests/fast/val.input +0 -0
- data/test/integration/tests/fast/val.output +3 -0
- data/test/spec/argument_checker_spec.rb +128 -0
- data/test/spec/basic_array_spec.rb +100 -0
- data/test/spec/basic_float_spec.rb +168 -0
- data/test/spec/basic_integer_spec.rb +270 -0
- data/test/spec/basic_numeric_spec.rb +16 -0
- data/test/spec/basic_object_spec.rb +22 -0
- data/test/spec/basic_string_spec.rb +259 -0
- data/test/spec/for_stack_spec.rb +70 -0
- data/test/spec/input_reader_spec.rb +143 -0
- data/test/spec/input_spec.rb +102 -0
- data/test/spec/line_spec.rb +18 -0
- data/test/spec/output_spec.rb +153 -0
- data/test/spec/parser_spec.rb +562 -0
- data/test/spec/program_spec.rb +45 -0
- data/test/spec/spec_helper.rb +15 -0
- data/test/spec/support/basic_numeric_helpers.rb +327 -0
- data/test/spec/support/basic_object_helpers.rb +22 -0
- data/test/spec/transcript_spec.rb +37 -0
- data/test/spec/transform_spec.rb +513 -0
- metadata +742 -0
@@ -0,0 +1,232 @@
|
|
1
|
+
2 PRINT TAB(30);"MASTERMIND"
|
2
|
+
4 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
6 PRINT: PRINT: PRINT
|
4
|
+
10 REM
|
5
|
+
20 REM MASTERMIND II
|
6
|
+
30 REM STEVE NORTH
|
7
|
+
40 REM CREATIVE COMPUTING
|
8
|
+
50 REM PO BOX 789-M MORRISTOWN NEW JERSEY 07960
|
9
|
+
60 REM
|
10
|
+
70 REM
|
11
|
+
80 INPUT "NUMBER OF COLORS";C9
|
12
|
+
90 IF C9>8 THEN PRINT "NO MORE THAN 8, PLEASE!":GOTO 80
|
13
|
+
100 INPUT "NUMBER OF POSITIONS";P9
|
14
|
+
110 INPUT "NUMBER OF ROUNDS";R9
|
15
|
+
120 P=C9^P9
|
16
|
+
130 PRINT "TOTAL POSSIBILITIES =";P
|
17
|
+
140 H=0:C=0
|
18
|
+
150 DIM Q(P9),S(10,2),S$(10),A$(P9),G$(P9),I(P),H$(P9)
|
19
|
+
160 L$="BWRGOYPT"
|
20
|
+
170 PRINT
|
21
|
+
180 PRINT
|
22
|
+
190 PRINT "COLOR LETTER"
|
23
|
+
200 PRINT "===== ======"
|
24
|
+
210 FOR X=1 TO C9
|
25
|
+
220 READ X$
|
26
|
+
230 PRINT X$;TAB(13);MID$(L$,X,1)
|
27
|
+
240 NEXT X
|
28
|
+
250 PRINT
|
29
|
+
260 FOR R=1 TO R9
|
30
|
+
270 PRINT
|
31
|
+
280 PRINT "ROUND NUMBER";R;"----"
|
32
|
+
290 PRINT
|
33
|
+
300 PRINT "GUESS MY COMBINATION.":PRINT
|
34
|
+
310 REM GET A COMBINATION
|
35
|
+
320 A=INT(P*RND(1)+1)
|
36
|
+
330 GOSUB 3000
|
37
|
+
340 FOR X=1 TO A
|
38
|
+
350 GOSUB 3500
|
39
|
+
360 NEXT X
|
40
|
+
370 FOR M=1 TO 10
|
41
|
+
380 PRINT "MOVE # ";M;" GUESS ";:INPUT X$
|
42
|
+
390 IF X$="BOARD" THEN 2000
|
43
|
+
400 IF X$="QUIT" THEN 2500
|
44
|
+
410 IF LEN(X$)<>P9 THEN PRINT "BAD NUMBER OF POSITIONS.":GOTO 380
|
45
|
+
420 REM UNPACK X$ INTO G$(1-P9)
|
46
|
+
430 FOR X=1 TO P9
|
47
|
+
440 FOR Y=1 TO C9
|
48
|
+
450 IF MID$(X$,X,1)=MID$(L$,Y,1) THEN 480
|
49
|
+
460 NEXT Y
|
50
|
+
470 PRINT "'"; MID$(X$,X,1); "' IS UNRECOGNIZED.":GOTO 380
|
51
|
+
480 G$(X)=MID$(X$,X,1)
|
52
|
+
490 NEXT X
|
53
|
+
500 REM NOW WE CONVERT Q(1-P9) INTO A$(1-P9) [ACTUAL GUESS]
|
54
|
+
510 GOSUB 4000
|
55
|
+
520 REM AND GET NUMBER OF BLACKS AND WHITES
|
56
|
+
530 GOSUB 4500
|
57
|
+
540 IF B=P9 THEN 630
|
58
|
+
550 REM TELL HUMAN RESULTS
|
59
|
+
560 PRINT "YOU HAVE ";B;" BLACKS AND ";W;" WHITES."
|
60
|
+
570 REM SAVE ALL THIS STUFF FOR BOARD PRINTOUT LATER
|
61
|
+
580 S$(M)=X$
|
62
|
+
590 S(M,1)=B
|
63
|
+
600 S(M,2)=W
|
64
|
+
610 NEXT M
|
65
|
+
620 PRINT "YOU RAN OUT OF MOVES! THAT'S ALL YOU GET!":GOTO 640
|
66
|
+
622 GOSUB 4000
|
67
|
+
623 PRINT "THE ACTUAL COMBINATION WAS: ";
|
68
|
+
624 FOR X=1 TO P9
|
69
|
+
625 PRINT A$(X);
|
70
|
+
626 NEXT X
|
71
|
+
627 PRINT
|
72
|
+
630 PRINT "YOU GUESSED IT IN ";M;" MOVES!"
|
73
|
+
640 H=H+M
|
74
|
+
650 GOSUB 5000
|
75
|
+
660 REM
|
76
|
+
670 REM NOW COMPUTER GUESSES
|
77
|
+
680 REM
|
78
|
+
690 FOR X=1 TO P
|
79
|
+
700 I(X)=1
|
80
|
+
710 NEXT X
|
81
|
+
720 PRINT "NOW I GUESS. THINK OF A COMBINATION."
|
82
|
+
730 INPUT "HIT RETURN WHEN READY:";X$
|
83
|
+
740 FOR M=1 TO 10
|
84
|
+
750 GOSUB 3000
|
85
|
+
760 REM FIND A GUESS
|
86
|
+
770 G=INT(P*RND(1)+1)
|
87
|
+
780 IF I(G)=1 THEN 890
|
88
|
+
790 FOR X=G TO P
|
89
|
+
800 IF I(X)=1 THEN 880
|
90
|
+
810 NEXT X
|
91
|
+
820 FOR X=1 TO G
|
92
|
+
830 IF I(X)=1 THEN 880
|
93
|
+
840 NEXT X
|
94
|
+
850 PRINT "YOU HAVE GIVEN ME INCONSISTENT INFORMATION."
|
95
|
+
860 PRINT "TRY AGAIN, AND THIS TIME PLEASE BE MORE CAREFUL."
|
96
|
+
870 GOTO 660
|
97
|
+
880 G=X
|
98
|
+
890 REM NOW WE CONVERT GUESS #G INTO G$
|
99
|
+
900 FOR X=1 TO G
|
100
|
+
910 GOSUB 3500
|
101
|
+
920 NEXT X
|
102
|
+
930 GOSUB 6000
|
103
|
+
940 PRINT "MY GUESS IS: ";
|
104
|
+
950 FOR X=1 TO P9
|
105
|
+
960 PRINT H$(X);
|
106
|
+
970 NEXT X
|
107
|
+
980 INPUT " BLACKS, WHITES ";B1,W1
|
108
|
+
990 IF B1=P9 THEN 1120
|
109
|
+
1000 GOSUB 3000
|
110
|
+
1010 FOR X=1 TO P
|
111
|
+
1020 GOSUB 3500
|
112
|
+
1030 IF I(X)=0 THEN 1070
|
113
|
+
1035 GOSUB 6500
|
114
|
+
1040 GOSUB 4000
|
115
|
+
1050 GOSUB 4500
|
116
|
+
1060 IF B1<>B OR W1<>W THEN I(X)=0
|
117
|
+
1070 NEXT X
|
118
|
+
1080 NEXT M
|
119
|
+
1090 PRINT "I USED UP ALL MY MOVES!"
|
120
|
+
1100 PRINT "I GUESS MY CPU IS JUST HAVING AN OFF DAY."
|
121
|
+
1110 GOTO 1130
|
122
|
+
1120 PRINT "I GOT IT IN ";M;" MOVES!"
|
123
|
+
1130 C=C+M
|
124
|
+
1140 GOSUB 5000
|
125
|
+
1150 NEXT R
|
126
|
+
1160 PRINT "GAME OVER"
|
127
|
+
1170 PRINT "FINAL SCORE:"
|
128
|
+
1180 GOSUB 5040
|
129
|
+
1190 STOP
|
130
|
+
2000 REM
|
131
|
+
2010 REM BOARD PRINTOUT ROUTINE
|
132
|
+
2020 REM
|
133
|
+
2025 PRINT
|
134
|
+
2030 PRINT "BOARD"
|
135
|
+
2040 PRINT "MOVE GUESS BLACK WHITE"
|
136
|
+
2050 FOR Z=1 TO M-1
|
137
|
+
2060 PRINT Z;TAB(9);S$(Z);TAB(25);S(Z,1);TAB(35);S(Z,2)
|
138
|
+
2070 NEXT Z
|
139
|
+
2075 PRINT
|
140
|
+
2080 GOTO 380
|
141
|
+
2500 REM
|
142
|
+
2510 REM QUIT ROUTINE
|
143
|
+
2520 REM
|
144
|
+
2530 PRINT "QUITTER! MY COMBINATION WAS: ";
|
145
|
+
2535 GOSUB 4000
|
146
|
+
2540 FOR X=1 TO P9
|
147
|
+
2550 PRINT A$(X);
|
148
|
+
2560 NEXT X
|
149
|
+
2565 PRINT
|
150
|
+
2570 PRINT "GOOD BYE"
|
151
|
+
2580 STOP
|
152
|
+
3000 REM
|
153
|
+
3010 REM INITIALIZE Q(1-P9) TO ZEROS
|
154
|
+
3020 REM
|
155
|
+
3030 FOR S=1 TO P9
|
156
|
+
3040 Q(S)=0
|
157
|
+
3050 NEXT S
|
158
|
+
3060 RETURN
|
159
|
+
3500 REM
|
160
|
+
3510 REM INCREMENT Q(1-P9)
|
161
|
+
3520 REM
|
162
|
+
3522 IF Q(1)>0 THEN 3530
|
163
|
+
3524 REM IF ZERO, THIS IS OUR FIRST INCREMENT: MAKE ALL ONES
|
164
|
+
3526 FOR S=1 TO P9
|
165
|
+
3527 Q(S)=1
|
166
|
+
3528 NEXT S
|
167
|
+
3529 RETURN
|
168
|
+
3530 Q=1
|
169
|
+
3540 Q(Q)=Q(Q)+1
|
170
|
+
3550 IF Q(Q)<=C9 THEN RETURN
|
171
|
+
3560 Q(Q)=1
|
172
|
+
3570 Q=Q+1
|
173
|
+
3580 GOTO 3540
|
174
|
+
4000 REM
|
175
|
+
4010 REM CONVERT Q(1-P9) TO A$(1-P9)
|
176
|
+
4020 REM
|
177
|
+
4030 FOR S=1 TO P9
|
178
|
+
4040 A$(S)=MID$(L$,Q(S),1)
|
179
|
+
4050 NEXT S
|
180
|
+
4060 RETURN
|
181
|
+
4500 REM
|
182
|
+
4510 REM GET NUMBER OF BLACKS (B) AND WHITES (W)
|
183
|
+
4520 REM MASHES G$ AND A$ IN THE PROCESS
|
184
|
+
4530 REM
|
185
|
+
4540 B=0:W=0:F=0
|
186
|
+
4550 FOR S=1 TO P9
|
187
|
+
4560 IF G$(S)<>A$(S) THEN 4620
|
188
|
+
4570 B=B+1
|
189
|
+
4580 G$(S)=CHR$(F)
|
190
|
+
4590 A$(S)=CHR$(F+1)
|
191
|
+
4600 F=F+2
|
192
|
+
4610 GOTO 4660
|
193
|
+
4620 FOR T=1 TO P9
|
194
|
+
4630 IF G$(S)<>A$(T) THEN 4650
|
195
|
+
4640 IF G$(T)=A$(T) THEN 4650
|
196
|
+
4645 W=W+1:A$(T)=CHR$(F):G$(S)=CHR$(F+1):F=F+2:GOTO 4660
|
197
|
+
4650 NEXT T
|
198
|
+
4660 NEXT S
|
199
|
+
4670 RETURN
|
200
|
+
5000 REM
|
201
|
+
5010 REM PRINT SCORE
|
202
|
+
5020 REM
|
203
|
+
5030 PRINT "SCORE:"
|
204
|
+
5040 PRINT " COMPUTER ";C
|
205
|
+
5050 PRINT " HUMAN ";H
|
206
|
+
5060 PRINT
|
207
|
+
5070 RETURN
|
208
|
+
5500 REM
|
209
|
+
5510 REM CONVERT Q(1-P9) INTO G$(1-P9)
|
210
|
+
5520 REM
|
211
|
+
5530 FOR S=1 TO P9
|
212
|
+
5540 G$(S)=MID$(L$,Q(S),1)
|
213
|
+
5550 NEXT S
|
214
|
+
5560 RETURN
|
215
|
+
6000 REM
|
216
|
+
6010 REM CONVERT Q(1-P9) TO H$(1-P9)
|
217
|
+
6020 REM
|
218
|
+
6030 FOR S=1 TO P9
|
219
|
+
6040 H$(S)=MID$(L$,Q(S),1)
|
220
|
+
6050 NEXT S
|
221
|
+
6060 RETURN
|
222
|
+
6500 REM
|
223
|
+
6510 REM COPY H$ INTO G$
|
224
|
+
6520 REM
|
225
|
+
6530 FOR S=1 TO P9
|
226
|
+
6540 G$(S)=H$(S)
|
227
|
+
6550 NEXT S
|
228
|
+
6560 RETURN
|
229
|
+
8000 REM PROGRAM DATA FOR COLOR NAMES
|
230
|
+
8010 DATA BLACK,WHITE,RED,GREEN,ORANGE,YELLOW,PURPLE,TAN
|
231
|
+
9998 REM ...WE'RE SORRY BUT IT'S TIME TO GO...
|
232
|
+
9999 END
|
@@ -0,0 +1,67 @@
|
|
1
|
+
MASTERMIND
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
NUMBER OF COLORS? 6
|
7
|
+
NUMBER OF POSITIONS? 4
|
8
|
+
NUMBER OF ROUNDS? 12
|
9
|
+
TOTAL POSSIBILITIES = 1296
|
10
|
+
|
11
|
+
|
12
|
+
COLOR LETTER
|
13
|
+
===== ======
|
14
|
+
BLACK B
|
15
|
+
WHITE W
|
16
|
+
RED R
|
17
|
+
GREEN G
|
18
|
+
ORANGE O
|
19
|
+
YELLOW Y
|
20
|
+
|
21
|
+
|
22
|
+
ROUND NUMBER 1 ----
|
23
|
+
|
24
|
+
GUESS MY COMBINATION.
|
25
|
+
|
26
|
+
MOVE # 1 GUESS ? BBBB
|
27
|
+
YOU HAVE 0 BLACKS AND 0 WHITES.
|
28
|
+
MOVE # 2 GUESS ? WWWW
|
29
|
+
YOU HAVE 1 BLACKS AND 0 WHITES.
|
30
|
+
MOVE # 3 GUESS ? RRRR
|
31
|
+
YOU HAVE 0 BLACKS AND 0 WHITES.
|
32
|
+
MOVE # 4 GUESS ? GGGG
|
33
|
+
YOU HAVE 2 BLACKS AND 0 WHITES.
|
34
|
+
MOVE # 5 GUESS ? OOOO
|
35
|
+
YOU HAVE 1 BLACKS AND 0 WHITES.
|
36
|
+
MOVE # 6 GUESS ? WBBB
|
37
|
+
YOU HAVE 0 BLACKS AND 1 WHITES.
|
38
|
+
MOVE # 7 GUESS ? BWBB
|
39
|
+
YOU HAVE 0 BLACKS AND 1 WHITES.
|
40
|
+
MOVE # 8 GUESS ? BBWB
|
41
|
+
YOU HAVE 1 BLACKS AND 0 WHITES.
|
42
|
+
MOVE # 9 GUESS ? GGWO
|
43
|
+
YOU HAVE 2 BLACKS AND 2 WHITES.
|
44
|
+
MOVE # 10 GUESS ? GOWG
|
45
|
+
YOU GUESSED IT IN 10 MOVES!
|
46
|
+
SCORE:
|
47
|
+
COMPUTER 0
|
48
|
+
HUMAN 10
|
49
|
+
|
50
|
+
NOW I GUESS. THINK OF A COMBINATION.
|
51
|
+
HIT RETURN WHEN READY:?
|
52
|
+
MY GUESS IS: ROWO BLACKS, WHITES ? 1,0
|
53
|
+
MY GUESS IS: GOGG BLACKS, WHITES ? 0,0
|
54
|
+
MY GUESS IS: RBBY BLACKS, WHITES ? 0,0
|
55
|
+
MY GUESS IS: WWWW BLACKS, WHITES ? 4,0
|
56
|
+
I GOT IT IN 4 MOVES!
|
57
|
+
SCORE:
|
58
|
+
COMPUTER 4
|
59
|
+
HUMAN 10
|
60
|
+
|
61
|
+
|
62
|
+
ROUND NUMBER 2 ----
|
63
|
+
|
64
|
+
GUESS MY COMBINATION.
|
65
|
+
|
66
|
+
MOVE # 1 GUESS ?
|
67
|
+
Error on line 380: No more input
|
@@ -0,0 +1,60 @@
|
|
1
|
+
10 PRINT TAB(31);"MATH DICE"
|
2
|
+
20 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
30 PRINT:PRINT:PRINT
|
4
|
+
40 PRINT "THIS PROGRAM GENERATES SUCCESIVE PICTURES OF TWO DICE."
|
5
|
+
50 PRINT "WHEN TWO DICE AND AN EQUAL SIGN FOLLOWED BY A QUESTION"
|
6
|
+
60 PRINT "MARK HAVE BEEN PRINTED, TYPE YOUR ANSWER AND THE RETURN KEY."
|
7
|
+
70 PRINT "TO CONCLUDE THE LESSON, TYPE CONTROL-C AS YOUR ANSWER."
|
8
|
+
80 PRINT
|
9
|
+
90 PRINT
|
10
|
+
100 N=N+1
|
11
|
+
110 D=INT(6*RND(1)+1)
|
12
|
+
120 PRINT" ----- "
|
13
|
+
130 IF D=1 THEN 200
|
14
|
+
140 IF D=2 THEN 180
|
15
|
+
150 IF D=3 THEN 180
|
16
|
+
160 PRINT "I * * I"
|
17
|
+
170 GOTO 210
|
18
|
+
180 PRINT "I * I"
|
19
|
+
190 GOTO 210
|
20
|
+
200 PRINT "I I"
|
21
|
+
210 IF D=2 THEN 260
|
22
|
+
220 IF D=4 THEN 260
|
23
|
+
230 IF D=6 THEN 270
|
24
|
+
240 PRINT "I * I"
|
25
|
+
250 GOTO 280
|
26
|
+
260 PRINT "I I"
|
27
|
+
265 GOTO 280
|
28
|
+
270 PRINT "I * * I"
|
29
|
+
280 IF D=1 THEN 350
|
30
|
+
290 IF D=2 THEN 330
|
31
|
+
300 IF D=3 THEN 330
|
32
|
+
310 PRINT "I * * I"
|
33
|
+
320 GOTO 360
|
34
|
+
330 PRINT "I * I"
|
35
|
+
340 GOTO 360
|
36
|
+
350 PRINT "I I"
|
37
|
+
360 PRINT " ----- "
|
38
|
+
370 PRINT
|
39
|
+
375 IF N=2 THEN 500
|
40
|
+
380 PRINT " +"
|
41
|
+
381 PRINT
|
42
|
+
400 A=D
|
43
|
+
410 GOTO 100
|
44
|
+
500 T=D+A
|
45
|
+
510 PRINT " =";
|
46
|
+
520 INPUT T1
|
47
|
+
530 IF T1=T THEN 590
|
48
|
+
540 PRINT "NO, COUNT THE SPOTS AND GIVE ANOTHER ANSWER."
|
49
|
+
541 PRINT " =";
|
50
|
+
550 INPUT T2
|
51
|
+
560 IF T2=T THEN 590
|
52
|
+
570 PRINT "NO, THE ANSWER IS";T
|
53
|
+
580 GOTO 600
|
54
|
+
590 PRINT "RIGHT!"
|
55
|
+
600 PRINT
|
56
|
+
601 PRINT "THE DICE ROLL AGAIN..."
|
57
|
+
610 PRINT
|
58
|
+
615 N=0
|
59
|
+
620 GOTO 100
|
60
|
+
999 END
|
@@ -0,0 +1,86 @@
|
|
1
|
+
MATH DICE
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
THIS PROGRAM GENERATES SUCCESIVE PICTURES OF TWO DICE.
|
7
|
+
WHEN TWO DICE AND AN EQUAL SIGN FOLLOWED BY A QUESTION
|
8
|
+
MARK HAVE BEEN PRINTED, TYPE YOUR ANSWER AND THE RETURN KEY.
|
9
|
+
TO CONCLUDE THE LESSON, TYPE CONTROL-C AS YOUR ANSWER.
|
10
|
+
|
11
|
+
|
12
|
+
-----
|
13
|
+
I * * I
|
14
|
+
I I
|
15
|
+
I * * I
|
16
|
+
-----
|
17
|
+
|
18
|
+
+
|
19
|
+
|
20
|
+
-----
|
21
|
+
I * * I
|
22
|
+
I * I
|
23
|
+
I * * I
|
24
|
+
-----
|
25
|
+
|
26
|
+
=? 9
|
27
|
+
RIGHT!
|
28
|
+
|
29
|
+
THE DICE ROLL AGAIN...
|
30
|
+
|
31
|
+
-----
|
32
|
+
I * * I
|
33
|
+
I I
|
34
|
+
I * * I
|
35
|
+
-----
|
36
|
+
|
37
|
+
+
|
38
|
+
|
39
|
+
-----
|
40
|
+
I * * I
|
41
|
+
I I
|
42
|
+
I * * I
|
43
|
+
-----
|
44
|
+
|
45
|
+
=? 8
|
46
|
+
RIGHT!
|
47
|
+
|
48
|
+
THE DICE ROLL AGAIN...
|
49
|
+
|
50
|
+
-----
|
51
|
+
I * I
|
52
|
+
I * I
|
53
|
+
I * I
|
54
|
+
-----
|
55
|
+
|
56
|
+
+
|
57
|
+
|
58
|
+
-----
|
59
|
+
I * * I
|
60
|
+
I I
|
61
|
+
I * * I
|
62
|
+
-----
|
63
|
+
|
64
|
+
=? 1
|
65
|
+
NO, COUNT THE SPOTS AND GIVE ANOTHER ANSWER.
|
66
|
+
=? 7
|
67
|
+
RIGHT!
|
68
|
+
|
69
|
+
THE DICE ROLL AGAIN...
|
70
|
+
|
71
|
+
-----
|
72
|
+
I * I
|
73
|
+
I * I
|
74
|
+
I * I
|
75
|
+
-----
|
76
|
+
|
77
|
+
+
|
78
|
+
|
79
|
+
-----
|
80
|
+
I * * I
|
81
|
+
I * * I
|
82
|
+
I * * I
|
83
|
+
-----
|
84
|
+
|
85
|
+
=?
|
86
|
+
Error on line 520: No more input
|
@@ -0,0 +1,56 @@
|
|
1
|
+
1 PRINT TAB(33);"MUGWUMP"
|
2
|
+
2 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
3 PRINT:PRINT:PRINT
|
4
|
+
4 REM COURTESY PEOPLE'S COMPUTER COMPANY
|
5
|
+
10 DIM P(4,2)
|
6
|
+
20 PRINT "THE OBJECT OF THIS GAME IS TO FIND FOUR MUGWUMPS"
|
7
|
+
30 PRINT "HIDDEN ON A 10 BY 10 GRID. HOMEBASE IS POSITION 0,0."
|
8
|
+
40 PRINT "ANY GUESS YOU MAKE MUST BE TWO NUMBERS WITH EACH"
|
9
|
+
50 PRINT "NUMBER BETWEEN 0 AND 9, INCLUSIVE. FIRST NUMBER"
|
10
|
+
60 PRINT "IS DISTANCE TO RIGHT OF HOMEBASE AND SECOND NUMBER"
|
11
|
+
70 PRINT "IS DISTANCE ABOVE HOMEBASE."
|
12
|
+
80 PRINT
|
13
|
+
90 PRINT "YOU GET 10 TRIES. AFTER EACH TRY, I WILL TELL"
|
14
|
+
100 PRINT "YOU HOW FAR YOU ARE FROM EACH MUGWUMP."
|
15
|
+
110 PRINT
|
16
|
+
240 GOSUB 1000
|
17
|
+
250 T=0
|
18
|
+
260 T=T+1
|
19
|
+
270 PRINT
|
20
|
+
275 PRINT
|
21
|
+
290 PRINT "TURN NO.";T;"-- WHAT IS YOUR GUESS";
|
22
|
+
300 INPUT M,N
|
23
|
+
310 FOR I=1 TO 4
|
24
|
+
320 IF P(I,1)=-1 THEN 400
|
25
|
+
330 IF P(I,1)<>M THEN 380
|
26
|
+
340 IF P(I,2)<>N THEN 380
|
27
|
+
350 P(I,1)=-1
|
28
|
+
360 PRINT "YOU HAVE FOUND MUGWUMP";I
|
29
|
+
370 GOTO 400
|
30
|
+
380 D=SQR((P(I,1)-M)^2+(P(I,2)-N)^2)
|
31
|
+
390 PRINT "YOU ARE";(INT(D*10))/10;"UNITS FROM MUGWUMP";I
|
32
|
+
400 NEXT I
|
33
|
+
410 FOR J=1 TO 4
|
34
|
+
420 IF P(J,1)<>-1 THEN 470
|
35
|
+
430 NEXT J
|
36
|
+
440 PRINT
|
37
|
+
450 PRINT "YOU GOT THEM ALL IN";T;"TURNS!"
|
38
|
+
460 GOTO 580
|
39
|
+
470 IF T<10 THEN 260
|
40
|
+
480 PRINT
|
41
|
+
490 PRINT "SORRY, THAT'S 10 TRIES. HERE IS WHERE THEY'RE HIDING:"
|
42
|
+
540 FOR I=1 TO 4
|
43
|
+
550 IF P(I,1)=-1 THEN 570
|
44
|
+
560 PRINT "MUGWUMP";I;"IS AT (";P(I,1);",";P(I,2);")"
|
45
|
+
570 NEXT I
|
46
|
+
580 PRINT
|
47
|
+
600 PRINT "THAT WAS FUN! LET'S PLAY AGAIN......."
|
48
|
+
610 PRINT "FOUR MORE MUGWUMPS ARE NOW IN HIDING."
|
49
|
+
630 GOTO 240
|
50
|
+
1000 FOR J=1 TO 2
|
51
|
+
1010 FOR I=1 TO 4
|
52
|
+
1020 P(I,J)=INT(10*RND(1))
|
53
|
+
1030 NEXT I
|
54
|
+
1040 NEXT J
|
55
|
+
1050 RETURN
|
56
|
+
1099 END
|
@@ -0,0 +1,139 @@
|
|
1
|
+
MUGWUMP
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
THE OBJECT OF THIS GAME IS TO FIND FOUR MUGWUMPS
|
7
|
+
HIDDEN ON A 10 BY 10 GRID. HOMEBASE IS POSITION 0,0.
|
8
|
+
ANY GUESS YOU MAKE MUST BE TWO NUMBERS WITH EACH
|
9
|
+
NUMBER BETWEEN 0 AND 9, INCLUSIVE. FIRST NUMBER
|
10
|
+
IS DISTANCE TO RIGHT OF HOMEBASE AND SECOND NUMBER
|
11
|
+
IS DISTANCE ABOVE HOMEBASE.
|
12
|
+
|
13
|
+
YOU GET 10 TRIES. AFTER EACH TRY, I WILL TELL
|
14
|
+
YOU HOW FAR YOU ARE FROM EACH MUGWUMP.
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
TURN NO. 1 -- WHAT IS YOUR GUESS? 0,0
|
19
|
+
YOU ARE 6.4 UNITS FROM MUGWUMP 1
|
20
|
+
YOU ARE 9.2 UNITS FROM MUGWUMP 2
|
21
|
+
YOU ARE 7.2 UNITS FROM MUGWUMP 3
|
22
|
+
YOU ARE 9.4 UNITS FROM MUGWUMP 4
|
23
|
+
|
24
|
+
|
25
|
+
TURN NO. 2 -- WHAT IS YOUR GUESS? 10,0
|
26
|
+
YOU ARE 6.4 UNITS FROM MUGWUMP 1
|
27
|
+
YOU ARE 6.7 UNITS FROM MUGWUMP 2
|
28
|
+
YOU ARE 5.6 UNITS FROM MUGWUMP 3
|
29
|
+
YOU ARE 9.4 UNITS FROM MUGWUMP 4
|
30
|
+
|
31
|
+
|
32
|
+
TURN NO. 3 -- WHAT IS YOUR GUESS? 5,4
|
33
|
+
YOU HAVE FOUND MUGWUMP 1
|
34
|
+
YOU ARE 2.8 UNITS FROM MUGWUMP 2
|
35
|
+
YOU ARE 1 UNITS FROM MUGWUMP 3
|
36
|
+
YOU ARE 4 UNITS FROM MUGWUMP 4
|
37
|
+
|
38
|
+
|
39
|
+
TURN NO. 4 -- WHAT IS YOUR GUESS? 7,6
|
40
|
+
YOU HAVE FOUND MUGWUMP 2
|
41
|
+
YOU ARE 2.2 UNITS FROM MUGWUMP 3
|
42
|
+
YOU ARE 2.8 UNITS FROM MUGWUMP 4
|
43
|
+
|
44
|
+
|
45
|
+
TURN NO. 5 -- WHAT IS YOUR GUESS? 6,4
|
46
|
+
YOU HAVE FOUND MUGWUMP 3
|
47
|
+
YOU ARE 4.1 UNITS FROM MUGWUMP 4
|
48
|
+
|
49
|
+
|
50
|
+
TURN NO. 6 -- WHAT IS YOUR GUESS? 5,8
|
51
|
+
YOU HAVE FOUND MUGWUMP 4
|
52
|
+
|
53
|
+
YOU GOT THEM ALL IN 6 TURNS!
|
54
|
+
|
55
|
+
THAT WAS FUN! LET'S PLAY AGAIN.......
|
56
|
+
FOUR MORE MUGWUMPS ARE NOW IN HIDING.
|
57
|
+
|
58
|
+
|
59
|
+
TURN NO. 1 -- WHAT IS YOUR GUESS? 1,1
|
60
|
+
YOU ARE 8.9 UNITS FROM MUGWUMP 1
|
61
|
+
YOU ARE 8.2 UNITS FROM MUGWUMP 2
|
62
|
+
YOU ARE 6 UNITS FROM MUGWUMP 3
|
63
|
+
YOU ARE 4.1 UNITS FROM MUGWUMP 4
|
64
|
+
|
65
|
+
|
66
|
+
TURN NO. 2 -- WHAT IS YOUR GUESS? 2,2
|
67
|
+
YOU ARE 7.6 UNITS FROM MUGWUMP 1
|
68
|
+
YOU ARE 7 UNITS FROM MUGWUMP 2
|
69
|
+
YOU ARE 5.3 UNITS FROM MUGWUMP 3
|
70
|
+
YOU ARE 3.6 UNITS FROM MUGWUMP 4
|
71
|
+
|
72
|
+
|
73
|
+
TURN NO. 3 -- WHAT IS YOUR GUESS? 3,3
|
74
|
+
YOU ARE 6.3 UNITS FROM MUGWUMP 1
|
75
|
+
YOU ARE 6 UNITS FROM MUGWUMP 2
|
76
|
+
YOU ARE 5 UNITS FROM MUGWUMP 3
|
77
|
+
YOU ARE 3.6 UNITS FROM MUGWUMP 4
|
78
|
+
|
79
|
+
|
80
|
+
TURN NO. 4 -- WHAT IS YOUR GUESS? 4,4
|
81
|
+
YOU ARE 5 UNITS FROM MUGWUMP 1
|
82
|
+
YOU ARE 5 UNITS FROM MUGWUMP 2
|
83
|
+
YOU ARE 5 UNITS FROM MUGWUMP 3
|
84
|
+
YOU ARE 4.1 UNITS FROM MUGWUMP 4
|
85
|
+
|
86
|
+
|
87
|
+
TURN NO. 5 -- WHAT IS YOUR GUESS? 5,5
|
88
|
+
YOU ARE 4 UNITS FROM MUGWUMP 1
|
89
|
+
YOU ARE 4.4 UNITS FROM MUGWUMP 2
|
90
|
+
YOU ARE 5.3 UNITS FROM MUGWUMP 3
|
91
|
+
YOU ARE 5 UNITS FROM MUGWUMP 4
|
92
|
+
|
93
|
+
|
94
|
+
TURN NO. 6 -- WHAT IS YOUR GUESS? 6,6
|
95
|
+
YOU ARE 3.1 UNITS FROM MUGWUMP 1
|
96
|
+
YOU ARE 4.2 UNITS FROM MUGWUMP 2
|
97
|
+
YOU ARE 6 UNITS FROM MUGWUMP 3
|
98
|
+
YOU ARE 6 UNITS FROM MUGWUMP 4
|
99
|
+
|
100
|
+
|
101
|
+
TURN NO. 7 -- WHAT IS YOUR GUESS? 7,7
|
102
|
+
YOU ARE 2.8 UNITS FROM MUGWUMP 1
|
103
|
+
YOU ARE 4.4 UNITS FROM MUGWUMP 2
|
104
|
+
YOU ARE 7 UNITS FROM MUGWUMP 3
|
105
|
+
YOU ARE 7.2 UNITS FROM MUGWUMP 4
|
106
|
+
|
107
|
+
|
108
|
+
TURN NO. 8 -- WHAT IS YOUR GUESS? 8,8
|
109
|
+
YOU ARE 3.1 UNITS FROM MUGWUMP 1
|
110
|
+
YOU ARE 5 UNITS FROM MUGWUMP 2
|
111
|
+
YOU ARE 8 UNITS FROM MUGWUMP 3
|
112
|
+
YOU ARE 8.5 UNITS FROM MUGWUMP 4
|
113
|
+
|
114
|
+
|
115
|
+
TURN NO. 9 -- WHAT IS YOUR GUESS? 9,9
|
116
|
+
YOU ARE 4 UNITS FROM MUGWUMP 1
|
117
|
+
YOU ARE 6 UNITS FROM MUGWUMP 2
|
118
|
+
YOU ARE 9.2 UNITS FROM MUGWUMP 3
|
119
|
+
YOU ARE 9.8 UNITS FROM MUGWUMP 4
|
120
|
+
|
121
|
+
|
122
|
+
TURN NO. 10 -- WHAT IS YOUR GUESS? 10,10
|
123
|
+
YOU ARE 5 UNITS FROM MUGWUMP 1
|
124
|
+
YOU ARE 7 UNITS FROM MUGWUMP 2
|
125
|
+
YOU ARE 10.4 UNITS FROM MUGWUMP 3
|
126
|
+
YOU ARE 11.1 UNITS FROM MUGWUMP 4
|
127
|
+
|
128
|
+
SORRY, THAT'S 10 TRIES. HERE IS WHERE THEY'RE HIDING:
|
129
|
+
MUGWUMP 1 IS AT ( 9 , 5 )
|
130
|
+
MUGWUMP 2 IS AT ( 3 , 9 )
|
131
|
+
MUGWUMP 3 IS AT ( 7 , 0 )
|
132
|
+
MUGWUMP 4 IS AT ( 5 , 0 )
|
133
|
+
|
134
|
+
THAT WAS FUN! LET'S PLAY AGAIN.......
|
135
|
+
FOUR MORE MUGWUMPS ARE NOW IN HIDING.
|
136
|
+
|
137
|
+
|
138
|
+
TURN NO. 1 -- WHAT IS YOUR GUESS?
|
139
|
+
Error on line 300: No more input
|
@@ -0,0 +1,25 @@
|
|
1
|
+
1 PRINT TAB(34);"NAME"
|
2
|
+
2 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
3 PRINT: PRINT: PRINT
|
4
|
+
5 DIM B$(40)
|
5
|
+
10 PRINT "HELLO.": PRINT "MY NAME IS CREATIVE COMPUTER."
|
6
|
+
20 PRINT "WHAT'S YOUR NAME (FIRST AND LAST";: INPUT A$: L=LEN(A$)
|
7
|
+
30 PRINT: PRINT "THANK YOU, ";
|
8
|
+
40 FOR I=1 TO L: B$(I)=MID$(A$,I,1): NEXT I
|
9
|
+
50 FOR I=L TO 1 STEP -1: PRINT B$(I);: NEXT I
|
10
|
+
60 PRINT ".": PRINT "OOPS! I GUESS I GOT IT BACKWARDS. A SMART"
|
11
|
+
70 PRINT "COMPUTER LIKE ME SHOULDN'T MAKE A MISTAKE LIKE THAT!": PRINT
|
12
|
+
80 PRINT "BUT I JUST NOTICED YOUR LETTERS ARE OUT OF ORDER."
|
13
|
+
90 PRINT "LET'S PUT THEM IN ORDER LIKE THIS: ";
|
14
|
+
100 FOR J=2 TO L: I=J-1: T$=B$(J)
|
15
|
+
110 IF T$>B$(I) THEN 130
|
16
|
+
120 B$(I+1)=B$(I): I=I-1: IF I>0 THEN 110
|
17
|
+
130 B$(I+1)=T$: NEXT J
|
18
|
+
140 FOR I=1 TO L: PRINT B$(I);: NEXT I: PRINT: PRINT
|
19
|
+
150 PRINT "DON'T YOU LIKE THAT BETTER";: INPUT D$
|
20
|
+
160 IF D$="YES" THEN 180
|
21
|
+
170 PRINT: PRINT "I'M SORRY YOU DON'T LIKE IT THAT WAY.": GOTO 200
|
22
|
+
180 PRINT: PRINT "I KNEW YOU'D AGREE!!"
|
23
|
+
200 PRINT: PRINT "I REALLY ENJOYED MEETING YOU ";A$;"."
|
24
|
+
210 PRINT "HAVE A NICE DAY!"
|
25
|
+
999 END
|