basic101 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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,115 @@
|
|
1
|
+
H-I-Q
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
HERE IS THE BOARD:
|
7
|
+
|
8
|
+
! ! !
|
9
|
+
13 14 15
|
10
|
+
|
11
|
+
! ! !
|
12
|
+
22 23 24
|
13
|
+
|
14
|
+
! ! ! ! ! ! !
|
15
|
+
29 30 31 32 33 34 35
|
16
|
+
|
17
|
+
! ! ! ! ! ! !
|
18
|
+
38 39 40 41 42 43 44
|
19
|
+
|
20
|
+
! ! ! ! ! ! !
|
21
|
+
47 48 49 50 51 52 53
|
22
|
+
|
23
|
+
! ! !
|
24
|
+
58 59 60
|
25
|
+
|
26
|
+
! ! !
|
27
|
+
67 68 69
|
28
|
+
|
29
|
+
TO SAVE TYPING TIME, A COMPRESSED VERSION OF THE GAME BOARD
|
30
|
+
WILL BE USED DURING PLAY. REFER TO THE ABOVE ONE FOR PEG
|
31
|
+
NUMBERS. OK, LET'S BEGIN.
|
32
|
+
|
33
|
+
! ! !
|
34
|
+
! ! !
|
35
|
+
! ! ! ! ! ! !
|
36
|
+
! ! ! O ! ! !
|
37
|
+
! ! ! ! ! ! !
|
38
|
+
! ! !
|
39
|
+
! ! !
|
40
|
+
|
41
|
+
MOVE WHICH PIECE?
|
42
|
+
Too few items, try again
|
43
|
+
MOVE WHICH PIECE? 23
|
44
|
+
TO WHERE? 41
|
45
|
+
|
46
|
+
! ! !
|
47
|
+
! O !
|
48
|
+
! ! ! O ! ! !
|
49
|
+
! ! ! ! ! ! !
|
50
|
+
! ! ! ! ! ! !
|
51
|
+
! ! !
|
52
|
+
! ! !
|
53
|
+
|
54
|
+
MOVE WHICH PIECE? 50
|
55
|
+
TO WHERE? 32
|
56
|
+
|
57
|
+
! ! !
|
58
|
+
! O !
|
59
|
+
! ! ! ! ! ! !
|
60
|
+
! ! ! O ! ! !
|
61
|
+
! ! ! O ! ! !
|
62
|
+
! ! !
|
63
|
+
! ! !
|
64
|
+
|
65
|
+
MOVE WHICH PIECE? 68
|
66
|
+
TO WHERE? 50
|
67
|
+
|
68
|
+
! ! !
|
69
|
+
! O !
|
70
|
+
! ! ! ! ! ! !
|
71
|
+
! ! ! O ! ! !
|
72
|
+
! ! ! ! ! ! !
|
73
|
+
! O !
|
74
|
+
! O !
|
75
|
+
|
76
|
+
MOVE WHICH PIECE? 39
|
77
|
+
TO WHERE? 41
|
78
|
+
|
79
|
+
! ! !
|
80
|
+
! O !
|
81
|
+
! ! ! ! ! ! !
|
82
|
+
! O O ! ! ! !
|
83
|
+
! ! ! ! ! ! !
|
84
|
+
! O !
|
85
|
+
! O !
|
86
|
+
|
87
|
+
MOVE WHICH PIECE? 42
|
88
|
+
TO WHERE? 40
|
89
|
+
|
90
|
+
! ! !
|
91
|
+
! O !
|
92
|
+
! ! ! ! ! ! !
|
93
|
+
! O ! O O ! !
|
94
|
+
! ! ! ! ! ! !
|
95
|
+
! O !
|
96
|
+
! O !
|
97
|
+
|
98
|
+
MOVE WHICH PIECE? 44
|
99
|
+
TO WHERE? 42
|
100
|
+
|
101
|
+
! ! !
|
102
|
+
! O !
|
103
|
+
! ! ! ! ! ! !
|
104
|
+
! O ! O ! O O
|
105
|
+
! ! ! ! ! ! !
|
106
|
+
! O !
|
107
|
+
! O !
|
108
|
+
|
109
|
+
THE GAME IS OVER.
|
110
|
+
YOU HAD 26 PIECES REMAINING.
|
111
|
+
|
112
|
+
PLAY AGAIN (YES OR NO)? NO
|
113
|
+
|
114
|
+
SO LONG FOR NOW.
|
115
|
+
|
@@ -0,0 +1,29 @@
|
|
1
|
+
10 PRINT TAB(34);"HI LO"
|
2
|
+
20 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
30 PRINT:PRINT:PRINT
|
4
|
+
100 PRINT "THIS IS THE GAME OF HI LO.":PRINT
|
5
|
+
110 PRINT "YOU WILL HAVE 6 TRIES TO GUESS THE AMOUNT OF MONEY IN THE"
|
6
|
+
120 PRINT "HI LO JACKPOT, WHICH IS BETWEEN 1 AND 100 DOLLARS. IF YOU"
|
7
|
+
130 PRINT "GUESS THE AMOUNT, YOU WIN ALL THE MONEY IN THE JACKPOT!"
|
8
|
+
140 PRINT "THEN YOU GET ANOTHER CHANCE TO WIN MORE MONEY. HOWEVER,"
|
9
|
+
150 PRINT "IF YOU DO NOT GUESS THE AMOUNT, THE GAME ENDS.":PRINT
|
10
|
+
160 R=0
|
11
|
+
170 B=0:PRINT
|
12
|
+
180 Y=INT(100*RND(1))
|
13
|
+
200 PRINT "YOUR GUESS";
|
14
|
+
210 INPUT A
|
15
|
+
220 B=B+1
|
16
|
+
230 IF A=Y THEN 300
|
17
|
+
240 IF A>Y THEN 270
|
18
|
+
250 PRINT "YOUR GUESS IS TOO LOW.":GOTO 280
|
19
|
+
270 PRINT "YOUR GUESS IS TOO HIGH."
|
20
|
+
280 PRINT:IF B<6 THEN 200
|
21
|
+
290 PRINT "YOU BLEW IT...TOO BAD...THE NUMBER WAS";Y
|
22
|
+
295 R=0:GOTO 350
|
23
|
+
300 PRINT "GOT IT!!!!!!!!!! YOU WIN";Y;"DOLLARS."
|
24
|
+
310 R=R+Y
|
25
|
+
320 PRINT "YOUR TOTAL WINNINGS ARE NOW";R;"DOLLARS."
|
26
|
+
350 PRINT:PRINT "PLAY AGAIN (YES OR NO)";
|
27
|
+
360 INPUT A$:IF A$="YES" THEN 170
|
28
|
+
380 PRINT:PRINT "SO LONG. HOPE YOU ENJOYED YOURSELF!!!"
|
29
|
+
390 END
|
@@ -0,0 +1,76 @@
|
|
1
|
+
HI LO
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
THIS IS THE GAME OF HI LO.
|
7
|
+
|
8
|
+
YOU WILL HAVE 6 TRIES TO GUESS THE AMOUNT OF MONEY IN THE
|
9
|
+
HI LO JACKPOT, WHICH IS BETWEEN 1 AND 100 DOLLARS. IF YOU
|
10
|
+
GUESS THE AMOUNT, YOU WIN ALL THE MONEY IN THE JACKPOT!
|
11
|
+
THEN YOU GET ANOTHER CHANCE TO WIN MORE MONEY. HOWEVER,
|
12
|
+
IF YOU DO NOT GUESS THE AMOUNT, THE GAME ENDS.
|
13
|
+
|
14
|
+
|
15
|
+
YOUR GUESS? 50
|
16
|
+
YOUR GUESS IS TOO LOW.
|
17
|
+
|
18
|
+
YOUR GUESS? 75
|
19
|
+
YOUR GUESS IS TOO HIGH.
|
20
|
+
|
21
|
+
YOUR GUESS? 62
|
22
|
+
YOUR GUESS IS TOO HIGH.
|
23
|
+
|
24
|
+
YOUR GUESS? 56
|
25
|
+
YOUR GUESS IS TOO HIGH.
|
26
|
+
|
27
|
+
YOUR GUESS? 53
|
28
|
+
YOUR GUESS IS TOO LOW.
|
29
|
+
|
30
|
+
YOUR GUESS? 54
|
31
|
+
GOT IT!!!!!!!!!! YOU WIN 54 DOLLARS.
|
32
|
+
YOUR TOTAL WINNINGS ARE NOW 54 DOLLARS.
|
33
|
+
|
34
|
+
PLAY AGAIN (YES OR NO)? YES
|
35
|
+
|
36
|
+
YOUR GUESS? 50
|
37
|
+
YOUR GUESS IS TOO LOW.
|
38
|
+
|
39
|
+
YOUR GUESS? 75
|
40
|
+
YOUR GUESS IS TOO HIGH.
|
41
|
+
|
42
|
+
YOUR GUESS? 62
|
43
|
+
YOUR GUESS IS TOO LOW.
|
44
|
+
|
45
|
+
YOUR GUESS? 68
|
46
|
+
YOUR GUESS IS TOO LOW.
|
47
|
+
|
48
|
+
YOUR GUESS? 71
|
49
|
+
GOT IT!!!!!!!!!! YOU WIN 71 DOLLARS.
|
50
|
+
YOUR TOTAL WINNINGS ARE NOW 125 DOLLARS.
|
51
|
+
|
52
|
+
PLAY AGAIN (YES OR NO)? YES
|
53
|
+
|
54
|
+
YOUR GUESS? 50
|
55
|
+
YOUR GUESS IS TOO LOW.
|
56
|
+
|
57
|
+
YOUR GUESS? 75
|
58
|
+
YOUR GUESS IS TOO HIGH.
|
59
|
+
|
60
|
+
YOUR GUESS? 62
|
61
|
+
YOUR GUESS IS TOO HIGH.
|
62
|
+
|
63
|
+
YOUR GUESS? 56
|
64
|
+
YOUR GUESS IS TOO LOW.
|
65
|
+
|
66
|
+
YOUR GUESS? 59
|
67
|
+
YOUR GUESS IS TOO LOW.
|
68
|
+
|
69
|
+
YOUR GUESS? 61
|
70
|
+
YOUR GUESS IS TOO HIGH.
|
71
|
+
|
72
|
+
YOU BLEW IT...TOO BAD...THE NUMBER WAS 60
|
73
|
+
|
74
|
+
PLAY AGAIN (YES OR NO)? NO
|
75
|
+
|
76
|
+
SO LONG. HOPE YOU ENJOYED YOURSELF!!!
|
@@ -0,0 +1,210 @@
|
|
1
|
+
2 PRINT TAB(33);"HOCKEY"
|
2
|
+
4 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
6 PRINT:PRINT:PRINT
|
4
|
+
10 REM ROBERT PUOPOLO ALG. 1 140 MCCOWAN 6/7/73 HOCKEY
|
5
|
+
30 LET X=1
|
6
|
+
40 PRINT:PRINT:PRINT
|
7
|
+
50 PRINT "WOULD YOU LIKE THE INSTRUCTIONS";:INPUT C$
|
8
|
+
55 PRINT
|
9
|
+
60 IF C$="NO" THEN 90
|
10
|
+
65 IF C$="YES" THEN 80
|
11
|
+
70 PRINT "ANSWER YES OR NO!!":GOTO 50
|
12
|
+
80 GOTO 1720
|
13
|
+
90 DIM A$(7),B$(7),H(20),T(5),T1(5),T2(5),T3(5)
|
14
|
+
100 PRINT "ENTER THE TWO TEAMS";:INPUT A$(7),B$(7)
|
15
|
+
105 PRINT
|
16
|
+
110 PRINT "ENTER THE NUMBER OF MINUTES IN A GAME";:INPUT T6
|
17
|
+
115 PRINT
|
18
|
+
120 IF T6<1 THEN 110:PRINT
|
19
|
+
130 PRINT "WOULD THE " A$(7) " COACH ENTER HIS TEAM"
|
20
|
+
135 PRINT
|
21
|
+
140 FOR I=1 TO 6:PRINT "PLAYER"I;:INPUT A$(I):NEXT I:PRINT
|
22
|
+
150 PRINT "WOULD THE " B$(7) " COACH DO THE SAME"
|
23
|
+
155 PRINT
|
24
|
+
160 FOR T=1 TO 6:PRINT "PLAYER"T;:INPUT B$(T):NEXT T:PRINT
|
25
|
+
170 PRINT "INPUT THE REFEREE FOR THIS GAME";:INPUT R$
|
26
|
+
180 PRINT:PRINT TAB(10);A$(7) " STARTING LINEUP"
|
27
|
+
190 FOR T=1 TO 6:PRINT A$(T):NEXT T
|
28
|
+
200 PRINT:PRINT TAB(10);B$(7)" STARTING LINEUP"
|
29
|
+
210 FOR T=1 TO 6:PRINT B$(T):NEXT T:PRINT
|
30
|
+
220 PRINT "WE'RE READY FOR TONIGHTS OPENING FACE-OFF."
|
31
|
+
230 PRINT R$ " WILL DROP THE PUCK BETWEEN " A$(2) " AND " B$(2)
|
32
|
+
240 FOR L=1 TO T6:IF L=1 THEN 260
|
33
|
+
250 PRINT "AND WE'RE READY FOR THE FACE-OFF"
|
34
|
+
260 C=INT(2*RND(X))+1:ON C GOTO 270,280
|
35
|
+
270 PRINT A$(7) " HAS CONTROL OF THE PUCK":GOTO 290
|
36
|
+
280 PRINT B$(7) " HAS CONTROL."
|
37
|
+
290 PRINT "PASS";:INPUT P:FOR N=1 TO 3:H(N)=0:NEXT N
|
38
|
+
300 IF P<0 THEN 290
|
39
|
+
305 IF P>3 THEN 290
|
40
|
+
310 FOR J=1 TO (P+2)
|
41
|
+
320 H(J)=INT(5*RND(X))+1
|
42
|
+
330 NEXT J:IF H(J-1)=H(J-2) THEN 310
|
43
|
+
331 IF P+2<3 THEN 350
|
44
|
+
335 IF H(J-1)=H(J-3) THEN 310
|
45
|
+
340 IF H(J-2)=H(J-3) THEN 310
|
46
|
+
350 IF P=0 THEN 360
|
47
|
+
355 GOTO 490
|
48
|
+
360 INPUT "SHOT";S:IF S<1 THEN 360
|
49
|
+
365 IF S>4 THEN 360
|
50
|
+
370 ON C GOTO 380,480
|
51
|
+
380 PRINT A$(H(J-1));:G=H(J-1):G1=0:G2=0
|
52
|
+
390 ON S GOTO 400,420,440,460
|
53
|
+
400 PRINT " LET'S A BOOMER GO FROM THE RED LINE!!"
|
54
|
+
410 Z=10:GOTO 890
|
55
|
+
420 PRINT " FLIPS A WRISTSHOT DOWN THE ICE"
|
56
|
+
440 PRINT " BACKHANDS ONE IN ON THE GOALTENDER"
|
57
|
+
450 Z=25:GOTO 890
|
58
|
+
460 PRINT " SNAPS A LONG FLIP SHOT"
|
59
|
+
470 Z=17:GOTO 890
|
60
|
+
480 PRINT B$(H(J-1));:G1=0:G2=0:G=H(J-1):GOTO 390
|
61
|
+
490 ON C GOTO 500,640
|
62
|
+
500 ON P GOTO 510,540,570
|
63
|
+
510 PRINT A$(H(J-2)) " LEADS " A$(H(J-1)) " WITH A PERFECT PASS."
|
64
|
+
520 PRINT A$(H(J-1)) " CUTTING IN!!!"
|
65
|
+
530 G=H(J-1):G1=H(J-2):G2=0:Z1=3:GOTO 770
|
66
|
+
540 PRINT A$(H(J-2)) " GIVES TO A STREAKING " A$(H(J-1))
|
67
|
+
550 PRINT A$(H(J-3)) " COMES DOWN ON " B$(5) " AND " B$(4)
|
68
|
+
560 G=H(J-3):G1=H(J-1):G2=H(J-2):Z1=2:GOTO 770
|
69
|
+
570 PRINT "OH MY GOD!! A ' 4 ON 2 ' SITUATION"
|
70
|
+
580 PRINT A$(H(J-3)) " LEADS " A$(H(J-2))
|
71
|
+
590 PRINT A$(H(J-2)) " IS WHEEELING THROUGH CENTER."
|
72
|
+
600 PRINT A$(H(J-2)) " GIVES AND GOES WITH " A$(H(J-1))
|
73
|
+
610 PRINT "PRETTY PASSING!"
|
74
|
+
620 PRINT A$(H(J-1)) " DROPS IT TO " A$(H(J-4))
|
75
|
+
630 G=H(J-4):G1=J(J-1):G2=H(J-2):Z1=1:GOTO 770
|
76
|
+
640 ON P GOTO 650,670,720
|
77
|
+
650 PRINT B$(H(J-1)) " HITS " B$(H(J-2)) " FLYING DOWN THE LEFT SIDE"
|
78
|
+
660 G=H(J-2):G1=H(J-1):G2=0:Z1=3:GOTO 770
|
79
|
+
670 PRINT "IT'S A ' 3 ON 2 '!"
|
80
|
+
680 PRINT "ONLY " A$(4) " AND " A$(5) " ARE BACK."
|
81
|
+
690 PRINT B$(H(J-2)) " GIVES OFF TO " B$(H(J-1))
|
82
|
+
700 PRINT B$(H(J-1)) " DROPS TO " B$(H(J-3))
|
83
|
+
710 G=H(J-3):G1=H(J-1):G2=H(J-2):Z1=2:GOTO 770
|
84
|
+
720 PRINT " A ' 3 ON 2 ' WITH A ' TRAILER '!"
|
85
|
+
730 PRINT B$(H(J-4)) " GIVES TO " B$(H(J-2)) " WHO SHUFFLES IT OFF TO"
|
86
|
+
740 PRINT B$(H(J-1)) " WHO FIRES A WING TO WING PASS TO "
|
87
|
+
750 PRINT B$(H(J-3)) " AS HE CUTS IN ALONE!!"
|
88
|
+
760 G=H(J-3):G1=H(J-1):G2=H(J-2):Z1=1:GOTO 770
|
89
|
+
770 PRINT "SHOT";:INPUT S:IF S>4 THEN 770:IF S<1 THEN 770
|
90
|
+
780 ON C GOTO 790,880
|
91
|
+
790 PRINT A$(G);:ON S GOTO 800,820,840,860
|
92
|
+
800 PRINT " LET'S A BIG SLAP SHOT GO!!"
|
93
|
+
810 Z=4:Z=Z+Z1:GOTO 890
|
94
|
+
820 PRINT " RIPS A WRIST SHOT OFF"
|
95
|
+
830 Z=2:Z=Z+Z1:GOTO 890
|
96
|
+
840 PRINT " GETS A BACKHAND OFF"
|
97
|
+
850 Z=3:Z=Z+Z1:GOTO 890
|
98
|
+
860 PRINT " SNAPS OFF A SNAP SHOT"
|
99
|
+
870 Z=2:Z=Z+Z1:GOTO 890
|
100
|
+
880 PRINT B$(G);:ON S GOTO 800,820,840,860
|
101
|
+
890 PRINT "AREA";:INPUT A:IF A<1 THEN 890
|
102
|
+
895 IF A>4 THEN 890
|
103
|
+
900 ON C GOTO 910,920
|
104
|
+
910 S2=S2+1:GOTO 930
|
105
|
+
920 S3=S3+1
|
106
|
+
930 A1=INT(4*RND(X))+1:IF A<>A1 THEN 1200
|
107
|
+
940 H(20)=INT(100*RND(X))+1
|
108
|
+
950 IF INT(H(20)/Z)=H(20)/Z THEN 1160
|
109
|
+
960 ON C GOTO 970,980
|
110
|
+
970 PRINT "GOAL " A$(7):H(9)=H(9)+1:GOTO 990
|
111
|
+
980 PRINT "SCORE " B$(7):H(8)=H(8)+1
|
112
|
+
990 FOR B1=1 TO 25:PRINT CHR$(7);:NEXT B1:PRINT
|
113
|
+
1000 PRINT "SCORE: ";:IF H(8)>H(9) THEN 1020
|
114
|
+
1010 PRINT A$(7)":";H(9),B$(7)":";H(8):GOTO 1030
|
115
|
+
1020 PRINT B$(7)":";H(8),A$(7)":";H(9)
|
116
|
+
1030 ON C GOTO 1040,1100
|
117
|
+
1040 PRINT "GOAL SCORED BY: " A$(G):IF G1=0 THEN 1070
|
118
|
+
1050 IF G2=0 THEN 1080
|
119
|
+
1060 PRINT " ASSISTED BY: " A$(G1) " AND " A$(G2):GOTO 1090
|
120
|
+
1070 PRINT " UNASSISTED.":GOTO 1090
|
121
|
+
1080 PRINT " ASSISTED BY: " A$(G1)
|
122
|
+
1090 T(G)=T(G)+1:T1(G1)=T1(G1)+1:T1(G2)=T1(G2)+1:GOTO 1540
|
123
|
+
1100 PRINT "GOAL SCORED BY: " B$(G);
|
124
|
+
1110 IF G1=0 THEN 1130
|
125
|
+
1115 IF G2=0 THEN 1140
|
126
|
+
1120 PRINT " ASSISTED BY: " B$(G1) " AND " B$(G2):GOTO 1150
|
127
|
+
1130 PRINT " UNASSISTED":GOTO 1150
|
128
|
+
1140 PRINT " ASSISTED BY: " B$(G1):GOTO 1150
|
129
|
+
1150 T2(G)=T2(G)+1:T3(G1)=T3(G1)+1:T3(G2)=T3(G2)+1:GOTO 1540
|
130
|
+
1160 A2=INT(100*RND(X))+1:IF INT(A2/4)=A2/4 THEN 1170
|
131
|
+
1165 GOTO 1200
|
132
|
+
1170 ON C GOTO 1180,1190
|
133
|
+
1180 PRINT "SAVE " B$(6) " -- REBOUND":GOTO 940
|
134
|
+
1190 PRINT "SAVE " A$(6) " -- FOLLOW UP":GOTO 940
|
135
|
+
1200 S1=INT(6*RND(X))+1
|
136
|
+
1210 ON C GOTO 1220,1380
|
137
|
+
1220 ON S1 GOTO 1230,1260,1290,1300,1330,1350
|
138
|
+
1230 PRINT "KICK SAVE AND A BEAUTY BY " B$(6)
|
139
|
+
1240 PRINT "CLEARED OUT BY " B$(3)
|
140
|
+
1250 GOTO 260
|
141
|
+
1260 PRINT "WHAT A SPECTACULAR GLOVE SAVE BY " B$(6)
|
142
|
+
1270 PRINT "AND " B$(6) " GOLFS IT INTO THE CROWD"
|
143
|
+
1280 GOTO 1540
|
144
|
+
1290 PRINT "SKATE SAVE ON A LOW STEAMER BY " B$(6):GOTO 260
|
145
|
+
1300 PRINT "PAD SAVE BY " B$(6) " OFF THE STICK"
|
146
|
+
1310 PRINT "OF "A$(G) " AND " B$(6) " COVERS UP"
|
147
|
+
1320 GOTO 1540
|
148
|
+
1330 PRINT "WHISTLES ONE OVER THE HEAD OF " B$(6)
|
149
|
+
1340 GOTO 260
|
150
|
+
1350 PRINT B$(6) " MAKES A FACE SAVE!! AND HE IS HURT"
|
151
|
+
1360 PRINT "THE DEFENSEMAN " B$(5) " COVERS UP FOR HIM"
|
152
|
+
1370 GOTO 1540
|
153
|
+
1380 ON S1 GOTO 1390,1410,1440,1470,1490,1520
|
154
|
+
1390 PRINT "STICK SAVE BY " A$(6)
|
155
|
+
1400 PRINT "AND CLEARED OUT BY " A$(4):GOTO 260
|
156
|
+
1410 PRINT "OH MY GOD!! " B$(G) " RATTLES ONE OFF THE POST"
|
157
|
+
1420 PRINT "TO THE RIGHT OF " A$(6) " AND " A$(6) " COVERS ";
|
158
|
+
1430 PRINT "ON THE LOOSE PUCK!":GOTO 1540
|
159
|
+
1440 PRINT "SKATE SAVE BY " A$(6)
|
160
|
+
1450 PRINT A$(6) " WHACKS THE LOOSE PUCK INTO THE STANDS"
|
161
|
+
1460 GOTO 1540
|
162
|
+
1470 PRINT "STICK SAVE BY " A$(6) " AND HE CLEARS IT OUT HIMSELF"
|
163
|
+
1480 GOTO 260
|
164
|
+
1490 PRINT "KICKED OUT BY " A$(6)
|
165
|
+
1500 PRINT "AND IT REBOUNDS ALL THE WAY TO CENTER ICE"
|
166
|
+
1510 GOTO 260
|
167
|
+
1520 PRINT "GLOVE SAVE " A$(6) " AND HE HANGS ON"
|
168
|
+
1530 GOTO 1540
|
169
|
+
1540 NEXT L:FOR N=1 TO 30:PRINT CHR$(7);:NEXT N:PRINT "THAT'S THE SIREN"
|
170
|
+
1550 PRINT:PRINT TAB(15);"FINAL SCORE:"
|
171
|
+
1560 IF H(8)>H(9) THEN 1580
|
172
|
+
1570 PRINT A$(7)":";H(9),B$(7)":";H(8):GOTO 1590
|
173
|
+
1580 PRINT B$(7)":";H(8),A$(7)":";H(9)
|
174
|
+
1590 PRINT: PRINT TAB(10);"SCORING SUMMARY":PRINT
|
175
|
+
1600 PRINT TAB(25);A$(7)
|
176
|
+
1610 PRINT TAB(5);"NAME";TAB(20);"GOALS";TAB(35);"ASSISTS"
|
177
|
+
1620 PRINT TAB(5);"----";TAB(20);"-----";TAB(35);"-------"
|
178
|
+
1630 FOR I=1 TO 5:PRINT TAB(5);A$(I);TAB(21);T(I);TAB(36);T1(I)
|
179
|
+
1640 NEXT I:PRINT
|
180
|
+
1650 PRINT TAB(25);B$(7)
|
181
|
+
1660 PRINT TAB(5);"NAME";TAB(20);"GOALS";TAB(35);"ASSISTS"
|
182
|
+
1670 PRINT TAB(5);"----";TAB(20);"-----";TAB(35);"-------"
|
183
|
+
1680 FOR T=1 TO 5:PRINT TAB(5);B$(T);TAB(21);T2(T);TAB(36);T3(T)
|
184
|
+
1690 NEXT T:PRINT
|
185
|
+
1700 PRINT "SHOTS ON NET":PRINT A$(7)":";S2:PRINT B$(7)":";S3
|
186
|
+
1710 END
|
187
|
+
1720 PRINT: PRINT "THIS IS A SIMULATED HOCKEY GAME."
|
188
|
+
1730 PRINT "QUESTION RESPONSE"
|
189
|
+
1740 PRINT "PASS TYPE IN THE NUMBER OF PASSES YOU WOULD"
|
190
|
+
1750 PRINT " LIKE TO MAKE, FROM 0 TO 3."
|
191
|
+
1760 PRINT "SHOT TYPE THE NUMBER CORRESPONDING TO THE SHOT"
|
192
|
+
1770 PRINT " YOU WANT TO MAKE. ENTER:"
|
193
|
+
1780 PRINT " 1 FOR A SLAPSHOT"
|
194
|
+
1790 PRINT " 2 FOR A WRISTSHOT"
|
195
|
+
1800 PRINT " 3 FOR A BACKHAND"
|
196
|
+
1810 PRINT " 4 FOR A SNAP SHOT"
|
197
|
+
1820 PRINT "AREA TYPE IN THE NUMBER CORRESPONDING TO"
|
198
|
+
1830 PRINT " THE AREA YOU ARE AIMING AT. ENTER:"
|
199
|
+
1840 PRINT " 1 FOR UPPER LEFT HAND CORNER"
|
200
|
+
1850 PRINT " 2 FOR UPPER RIGHT HAND CORNER"
|
201
|
+
1860 PRINT " 3 FOR LOWER LEFT HAND CORNER"
|
202
|
+
1870 PRINT " 4 FOR LOWER RIGHT HAND CORNER"
|
203
|
+
1880 PRINT
|
204
|
+
1890 PRINT "AT THE START OF THE GAME, YOU WILL BE ASKED FOR THE NAMES"
|
205
|
+
1900 PRINT "OF YOUR PLAYERS. THEY ARE ENTERED IN THE ORDER: "
|
206
|
+
1910 PRINT "LEFT WING, CENTER, RIGHT WING, LEFT DEFENSE,"
|
207
|
+
1920 PRINT "RIGHT DEFENSE, GOALKEEPER. ANY OTHER INPUT REQUIRED WILL"
|
208
|
+
1930 PRINT "HAVE EXPLANATORY INSTRUCTIONS."
|
209
|
+
1940 GOTO 90
|
210
|
+
1950 END
|
@@ -0,0 +1,59 @@
|
|
1
|
+
YES
|
2
|
+
FOO,BAR
|
3
|
+
5
|
4
|
+
#1
|
5
|
+
#2
|
6
|
+
#3
|
7
|
+
#4
|
8
|
+
#5
|
9
|
+
#6
|
10
|
+
#A
|
11
|
+
#B
|
12
|
+
#C
|
13
|
+
#D
|
14
|
+
#E
|
15
|
+
#F
|
16
|
+
#REF
|
17
|
+
NO
|
18
|
+
2
|
19
|
+
4
|
20
|
+
2
|
21
|
+
0
|
22
|
+
2
|
23
|
+
1
|
24
|
+
1
|
25
|
+
3
|
26
|
+
3
|
27
|
+
2
|
28
|
+
4
|
29
|
+
4
|
30
|
+
3
|
31
|
+
1
|
32
|
+
1
|
33
|
+
3
|
34
|
+
1
|
35
|
+
2
|
36
|
+
0
|
37
|
+
2
|
38
|
+
2
|
39
|
+
2
|
40
|
+
4
|
41
|
+
4
|
42
|
+
1
|
43
|
+
2
|
44
|
+
3
|
45
|
+
1
|
46
|
+
3
|
47
|
+
2
|
48
|
+
0
|
49
|
+
2
|
50
|
+
4
|
51
|
+
1
|
52
|
+
2
|
53
|
+
3
|
54
|
+
2
|
55
|
+
3
|
56
|
+
4
|
57
|
+
3
|
58
|
+
2
|
59
|
+
1
|