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,243 @@
|
|
1
|
+
HOCKEY
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
WOULD YOU LIKE THE INSTRUCTIONS? YES
|
10
|
+
|
11
|
+
|
12
|
+
THIS IS A SIMULATED HOCKEY GAME.
|
13
|
+
QUESTION RESPONSE
|
14
|
+
PASS TYPE IN THE NUMBER OF PASSES YOU WOULD
|
15
|
+
LIKE TO MAKE, FROM 0 TO 3.
|
16
|
+
SHOT TYPE THE NUMBER CORRESPONDING TO THE SHOT
|
17
|
+
YOU WANT TO MAKE. ENTER:
|
18
|
+
1 FOR A SLAPSHOT
|
19
|
+
2 FOR A WRISTSHOT
|
20
|
+
3 FOR A BACKHAND
|
21
|
+
4 FOR A SNAP SHOT
|
22
|
+
AREA TYPE IN THE NUMBER CORRESPONDING TO
|
23
|
+
THE AREA YOU ARE AIMING AT. ENTER:
|
24
|
+
1 FOR UPPER LEFT HAND CORNER
|
25
|
+
2 FOR UPPER RIGHT HAND CORNER
|
26
|
+
3 FOR LOWER LEFT HAND CORNER
|
27
|
+
4 FOR LOWER RIGHT HAND CORNER
|
28
|
+
|
29
|
+
AT THE START OF THE GAME, YOU WILL BE ASKED FOR THE NAMES
|
30
|
+
OF YOUR PLAYERS. THEY ARE ENTERED IN THE ORDER:
|
31
|
+
LEFT WING, CENTER, RIGHT WING, LEFT DEFENSE,
|
32
|
+
RIGHT DEFENSE, GOALKEEPER. ANY OTHER INPUT REQUIRED WILL
|
33
|
+
HAVE EXPLANATORY INSTRUCTIONS.
|
34
|
+
ENTER THE TWO TEAMS? FOO,BAR
|
35
|
+
|
36
|
+
ENTER THE NUMBER OF MINUTES IN A GAME? 5
|
37
|
+
|
38
|
+
|
39
|
+
WOULD THE FOO COACH ENTER HIS TEAM
|
40
|
+
|
41
|
+
PLAYER 1 ? #1
|
42
|
+
PLAYER 2 ? #2
|
43
|
+
PLAYER 3 ? #3
|
44
|
+
PLAYER 4 ? #4
|
45
|
+
PLAYER 5 ? #5
|
46
|
+
PLAYER 6 ? #6
|
47
|
+
|
48
|
+
WOULD THE BAR COACH DO THE SAME
|
49
|
+
|
50
|
+
PLAYER 1 ? #A
|
51
|
+
PLAYER 2 ? #B
|
52
|
+
PLAYER 3 ? #C
|
53
|
+
PLAYER 4 ? #D
|
54
|
+
PLAYER 5 ? #E
|
55
|
+
PLAYER 6 ? #F
|
56
|
+
|
57
|
+
INPUT THE REFEREE FOR THIS GAME? #REF
|
58
|
+
|
59
|
+
FOO STARTING LINEUP
|
60
|
+
#1
|
61
|
+
#2
|
62
|
+
#3
|
63
|
+
#4
|
64
|
+
#5
|
65
|
+
#6
|
66
|
+
|
67
|
+
BAR STARTING LINEUP
|
68
|
+
#A
|
69
|
+
#B
|
70
|
+
#C
|
71
|
+
#D
|
72
|
+
#E
|
73
|
+
#F
|
74
|
+
|
75
|
+
WE'RE READY FOR TONIGHTS OPENING FACE-OFF.
|
76
|
+
#REF WILL DROP THE PUCK BETWEEN #2 AND #B
|
77
|
+
BAR HAS CONTROL.
|
78
|
+
PASS? NO
|
79
|
+
Not numeric: "NO", try again
|
80
|
+
? 2
|
81
|
+
IT'S A ' 3 ON 2 '!
|
82
|
+
ONLY #4 AND #5 ARE BACK.
|
83
|
+
#D GIVES OFF TO #A
|
84
|
+
#A DROPS TO #C
|
85
|
+
SHOT? 4
|
86
|
+
#C SNAPS OFF A SNAP SHOT
|
87
|
+
AREA? 2
|
88
|
+
STICK SAVE BY #6
|
89
|
+
AND CLEARED OUT BY #4
|
90
|
+
BAR HAS CONTROL.
|
91
|
+
PASS? 0
|
92
|
+
SHOT? 2
|
93
|
+
#D FLIPS A WRISTSHOT DOWN THE ICE
|
94
|
+
BACKHANDS ONE IN ON THE GOALTENDER
|
95
|
+
AREA? 1
|
96
|
+
STICK SAVE BY #6 AND HE CLEARS IT OUT HIMSELF
|
97
|
+
FOO HAS CONTROL OF THE PUCK
|
98
|
+
PASS? 1
|
99
|
+
#4 LEADS #2 WITH A PERFECT PASS.
|
100
|
+
#2 CUTTING IN!!!
|
101
|
+
SHOT? 3
|
102
|
+
#2 GETS A BACKHAND OFF
|
103
|
+
AREA? 3
|
104
|
+
WHISTLES ONE OVER THE HEAD OF #F
|
105
|
+
FOO HAS CONTROL OF THE PUCK
|
106
|
+
PASS? 2
|
107
|
+
#2 GIVES TO A STREAKING #1
|
108
|
+
#4 COMES DOWN ON #E AND #D
|
109
|
+
SHOT? 4
|
110
|
+
#4 SNAPS OFF A SNAP SHOT
|
111
|
+
AREA? 4
|
112
|
+
SKATE SAVE ON A LOW STEAMER BY #F
|
113
|
+
BAR HAS CONTROL.
|
114
|
+
PASS? 3
|
115
|
+
A ' 3 ON 2 ' WITH A ' TRAILER '!
|
116
|
+
#B GIVES TO #B WHO SHUFFLES IT OFF TO
|
117
|
+
#A WHO FIRES A WING TO WING PASS TO
|
118
|
+
#C AS HE CUTS IN ALONE!!
|
119
|
+
SHOT? 1
|
120
|
+
#C LET'S A BIG SLAP SHOT GO!!
|
121
|
+
AREA? 1
|
122
|
+
SCORE BAR
|
123
|
+
|
124
|
+
SCORE: BAR: 1 FOO: 0
|
125
|
+
GOAL SCORED BY: #C ASSISTED BY: #A AND #B
|
126
|
+
AND WE'RE READY FOR THE FACE-OFF
|
127
|
+
FOO HAS CONTROL OF THE PUCK
|
128
|
+
PASS? 3
|
129
|
+
OH MY GOD!! A ' 4 ON 2 ' SITUATION
|
130
|
+
#3 LEADS #5
|
131
|
+
#5 IS WHEEELING THROUGH CENTER.
|
132
|
+
#5 GIVES AND GOES WITH #4
|
133
|
+
PRETTY PASSING!
|
134
|
+
#4 DROPS IT TO #5
|
135
|
+
SHOT? 1
|
136
|
+
#5 LET'S A BIG SLAP SHOT GO!!
|
137
|
+
AREA? 2
|
138
|
+
KICK SAVE AND A BEAUTY BY #F
|
139
|
+
CLEARED OUT BY #C
|
140
|
+
FOO HAS CONTROL OF THE PUCK
|
141
|
+
PASS? 0
|
142
|
+
SHOT? 2
|
143
|
+
#2 FLIPS A WRISTSHOT DOWN THE ICE
|
144
|
+
BACKHANDS ONE IN ON THE GOALTENDER
|
145
|
+
AREA? 2
|
146
|
+
WHAT A SPECTACULAR GLOVE SAVE BY #F
|
147
|
+
AND #F GOLFS IT INTO THE CROWD
|
148
|
+
AND WE'RE READY FOR THE FACE-OFF
|
149
|
+
FOO HAS CONTROL OF THE PUCK
|
150
|
+
PASS? 2
|
151
|
+
#3 GIVES TO A STREAKING #2
|
152
|
+
#4 COMES DOWN ON #E AND #D
|
153
|
+
SHOT? 4
|
154
|
+
#4 SNAPS OFF A SNAP SHOT
|
155
|
+
AREA? 4
|
156
|
+
KICK SAVE AND A BEAUTY BY #F
|
157
|
+
CLEARED OUT BY #C
|
158
|
+
BAR HAS CONTROL.
|
159
|
+
PASS? 1
|
160
|
+
#D HITS #B FLYING DOWN THE LEFT SIDE
|
161
|
+
SHOT? 2
|
162
|
+
#B RIPS A WRIST SHOT OFF
|
163
|
+
AREA? 3
|
164
|
+
KICKED OUT BY #6
|
165
|
+
AND IT REBOUNDS ALL THE WAY TO CENTER ICE
|
166
|
+
FOO HAS CONTROL OF THE PUCK
|
167
|
+
PASS? 1
|
168
|
+
#1 LEADS #4 WITH A PERFECT PASS.
|
169
|
+
#4 CUTTING IN!!!
|
170
|
+
SHOT? 3
|
171
|
+
#4 GETS A BACKHAND OFF
|
172
|
+
AREA? 2
|
173
|
+
GOAL FOO
|
174
|
+
|
175
|
+
SCORE: FOO: 1 BAR: 1
|
176
|
+
GOAL SCORED BY: #4
|
177
|
+
ASSISTED BY: #1
|
178
|
+
AND WE'RE READY FOR THE FACE-OFF
|
179
|
+
BAR HAS CONTROL.
|
180
|
+
PASS? 0
|
181
|
+
SHOT? 2
|
182
|
+
#C FLIPS A WRISTSHOT DOWN THE ICE
|
183
|
+
BACKHANDS ONE IN ON THE GOALTENDER
|
184
|
+
AREA? 4
|
185
|
+
STICK SAVE BY #6 AND HE CLEARS IT OUT HIMSELF
|
186
|
+
FOO HAS CONTROL OF THE PUCK
|
187
|
+
PASS? 1
|
188
|
+
#2 LEADS #5 WITH A PERFECT PASS.
|
189
|
+
#5 CUTTING IN!!!
|
190
|
+
SHOT? 2
|
191
|
+
#5 RIPS A WRIST SHOT OFF
|
192
|
+
AREA? 3
|
193
|
+
#F MAKES A FACE SAVE!! AND HE IS HURT
|
194
|
+
THE DEFENSEMAN #E COVERS UP FOR HIM
|
195
|
+
AND WE'RE READY FOR THE FACE-OFF
|
196
|
+
BAR HAS CONTROL.
|
197
|
+
PASS? 2
|
198
|
+
IT'S A ' 3 ON 2 '!
|
199
|
+
ONLY #4 AND #5 ARE BACK.
|
200
|
+
#A GIVES OFF TO #B
|
201
|
+
#B DROPS TO #C
|
202
|
+
SHOT? 3
|
203
|
+
#C GETS A BACKHAND OFF
|
204
|
+
AREA? 4
|
205
|
+
STICK SAVE BY #6 AND HE CLEARS IT OUT HIMSELF
|
206
|
+
BAR HAS CONTROL.
|
207
|
+
PASS? 3
|
208
|
+
A ' 3 ON 2 ' WITH A ' TRAILER '!
|
209
|
+
#D GIVES TO #E WHO SHUFFLES IT OFF TO
|
210
|
+
#B WHO FIRES A WING TO WING PASS TO
|
211
|
+
#C AS HE CUTS IN ALONE!!
|
212
|
+
SHOT? 2
|
213
|
+
#C RIPS A WRIST SHOT OFF
|
214
|
+
AREA? 1
|
215
|
+
GLOVE SAVE #6 AND HE HANGS ON
|
216
|
+
THAT'S THE SIREN
|
217
|
+
|
218
|
+
FINAL SCORE:
|
219
|
+
FOO: 1 BAR: 1
|
220
|
+
|
221
|
+
SCORING SUMMARY
|
222
|
+
|
223
|
+
FOO
|
224
|
+
NAME GOALS ASSISTS
|
225
|
+
---- ----- -------
|
226
|
+
#1 0 1
|
227
|
+
#2 0 0
|
228
|
+
#3 0 0
|
229
|
+
#4 1 0
|
230
|
+
#5 0 0
|
231
|
+
|
232
|
+
BAR
|
233
|
+
NAME GOALS ASSISTS
|
234
|
+
---- ----- -------
|
235
|
+
#A 0 1
|
236
|
+
#B 0 1
|
237
|
+
#C 1 0
|
238
|
+
#D 0 0
|
239
|
+
#E 0 0
|
240
|
+
|
241
|
+
SHOTS ON NET
|
242
|
+
FOO: 7
|
243
|
+
BAR: 7
|
@@ -0,0 +1,130 @@
|
|
1
|
+
100 PRINT TAB(31);"HORSERACE"
|
2
|
+
110 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
120 PRINT:PRINT:PRINT
|
4
|
+
210 DIM S(8)
|
5
|
+
220 PRINT "WELCOME TO SOUTH PORTLAND HIGH RACETRACK"
|
6
|
+
230 PRINT " ...OWNED BY LAURIE CHEVALIER"
|
7
|
+
240 PRINT "DO YOU WANT DIRECTIONS";
|
8
|
+
250 INPUT X$
|
9
|
+
260 IF X$="NO" THEN 320
|
10
|
+
270 PRINT"UP TO 10 MAY PLAY. A TABLE OF ODDS WILL BE PRINTED. YOU"
|
11
|
+
280 PRINT"MAY BET ANY + AMOUNT UNDER 100000 ON ONE HORSE."
|
12
|
+
290 PRINT "DURING THE RACE, A HORSE WILL BE SHOWN BY ITS"
|
13
|
+
300 PRINT"NUMBER. THE HORSES RACE DOWN THE PAPER!"
|
14
|
+
310 PRINT
|
15
|
+
320 PRINT "HOW MANY WANT TO BET";
|
16
|
+
330 INPUT C
|
17
|
+
340 PRINT "WHEN ? APPEARS,TYPE NAME"
|
18
|
+
350 FOR A=1 TO C
|
19
|
+
360 INPUT W$(A)
|
20
|
+
370 NEXT A
|
21
|
+
380 PRINT
|
22
|
+
390 PRINT"HORSE",,"NUMBER","ODDS"
|
23
|
+
400 PRINT
|
24
|
+
410 FOR I=1 TO 8: S(I)=0: NEXT I
|
25
|
+
420 LET R=0
|
26
|
+
430 FOR A=1 TO 8
|
27
|
+
440 LET D(A)=INT(10*RND(1)+1)
|
28
|
+
450 NEXT A
|
29
|
+
460 FOR A=1 TO 8
|
30
|
+
470 LET R=R+D(A)
|
31
|
+
480 NEXT A
|
32
|
+
490 LET V$(1)="JOE MAW"
|
33
|
+
500 LET V$(2)="L.B.J."
|
34
|
+
510 LET V$(3)="MR.WASHBURN"
|
35
|
+
520 LET V$(4)="MISS KAREN"
|
36
|
+
530 LET V$(5)="JOLLY"
|
37
|
+
540 LET V$(6)="HORSE"
|
38
|
+
550 LET V$(7)="JELLY DO NOT"
|
39
|
+
560 LET V$(8)="MIDNIGHT"
|
40
|
+
570 FOR N=1 TO 8
|
41
|
+
580 PRINT V$(N),,N,R/D(N);":1"
|
42
|
+
590 NEXT N
|
43
|
+
600 PRINT"--------------------------------------------------"
|
44
|
+
610 PRINT "PLACE YOUR BETS...HORSE # THEN AMOUNT"
|
45
|
+
620 FOR J=1 TO C
|
46
|
+
630 PRINT W$(J);
|
47
|
+
640 INPUT Q(J),P(J)
|
48
|
+
650 IF P(J)<1 THEN 670
|
49
|
+
660 IF P(J)<100000 THEN 690
|
50
|
+
670 PRINT" YOU CAN'T DO THAT!"
|
51
|
+
680 GOTO 630
|
52
|
+
690 NEXT J
|
53
|
+
700 PRINT
|
54
|
+
710 PRINT"1 2 3 4 5 6 7 8"
|
55
|
+
720 PRINT"XXXXSTARTXXXX"
|
56
|
+
730 FOR I=1 TO 8
|
57
|
+
740 LET M=I
|
58
|
+
750 LET M(I)=M
|
59
|
+
760 LET Y(M(I))=INT(100*RND(1)+1)
|
60
|
+
770 IF Y(M(I))<10 THEN 860
|
61
|
+
780 LET S=INT(R/D(I)+.5)
|
62
|
+
790 IF Y(M(I))<S+17 THEN 880
|
63
|
+
800 IF Y(M(I))<S+37 THEN 900
|
64
|
+
810 IF Y(M(I))<S+57 THEN 920
|
65
|
+
820 IF Y(M(I))<77+S THEN 940
|
66
|
+
830 IF Y(M(I))<S+92 THEN 960
|
67
|
+
840 LET Y(M(I))=7
|
68
|
+
850 GOTO 970
|
69
|
+
860 LET Y(M(I))=1
|
70
|
+
870 GOTO 970
|
71
|
+
880 LET Y(M(I))=2
|
72
|
+
890 GOTO 970
|
73
|
+
900 LET Y(M(I))=3
|
74
|
+
910 GOTO 970
|
75
|
+
920 LET Y(M(I))=4
|
76
|
+
930 GOTO 970
|
77
|
+
940 LET Y(M(I))=5
|
78
|
+
950 GOTO 970
|
79
|
+
960 LET Y(M(I))=6
|
80
|
+
970 NEXT I
|
81
|
+
980 LET M=I
|
82
|
+
990 FOR I=1 TO 8
|
83
|
+
1000 LET S(M(I))=S(M(I))+Y(M(I))
|
84
|
+
1010 NEXT I
|
85
|
+
1020 LET I=1
|
86
|
+
1030 FOR L=1 TO 8
|
87
|
+
1040 FOR I=1 TO 8-L
|
88
|
+
1050 IF S(M(I))<S(M(I+1))THEN 1090
|
89
|
+
1060 LET H=M(I)
|
90
|
+
1070 LET M(I)=M(I+1)
|
91
|
+
1080 LET M(I+1)=H
|
92
|
+
1090 NEXT I
|
93
|
+
1100 NEXT L
|
94
|
+
1110 LET T=S(M(8))
|
95
|
+
1120 FOR I=1 TO 8
|
96
|
+
1130 LET B=S(M(I))-S(M(I-1))
|
97
|
+
1140 IF B=0 THEN 1190
|
98
|
+
1150 FOR A=1 TO B
|
99
|
+
1160 PRINT
|
100
|
+
1170 IF S(M(I))>27 THEN 1240
|
101
|
+
1180 NEXT A
|
102
|
+
1190 PRINT M(I);
|
103
|
+
1200 NEXT I
|
104
|
+
1210 FOR A=1 TO 28-T
|
105
|
+
1220 PRINT
|
106
|
+
1230 NEXT A
|
107
|
+
1240 PRINT "XXXXFINISHXXXX";
|
108
|
+
1242 PRINT
|
109
|
+
1243 PRINT
|
110
|
+
1244 PRINT "---------------------------------------------"
|
111
|
+
1245 PRINT
|
112
|
+
1250 IF T<28 THEN 720
|
113
|
+
1270 PRINT "THE RACE RESULTS ARE:"
|
114
|
+
1272 LET Z9=1
|
115
|
+
1280 FOR I=8 TO 1 STEP-1
|
116
|
+
1290 LET F=M(I)
|
117
|
+
1300 PRINT
|
118
|
+
1310 PRINT Z9;"PLACE HORSE NO.";F,"AT ";R/D(F);":1"
|
119
|
+
1312 LET Z9=Z9+1
|
120
|
+
1320 NEXT I
|
121
|
+
1330 FOR J=1 TO C
|
122
|
+
1340 IF Q(J)<>M(8) THEN 1370
|
123
|
+
1350 LET N=Q(J)
|
124
|
+
1355 PRINT
|
125
|
+
1360 PRINT W$(J);" WINS $";(R/D(N))*P(J)
|
126
|
+
1370 NEXT J
|
127
|
+
1372 PRINT "DO YOU WANT TO BET ON THE NEXT RACE ?"
|
128
|
+
1374 INPUT "YES OR NO"; O$
|
129
|
+
1376 IF O$="YES" THEN 380
|
130
|
+
1380 END
|