Last active
November 27, 2018 17:11
-
-
Save mikalai-yankouski/256666c9fb9b7bb7273c67e82ccaf61c to your computer and use it in GitHub Desktop.
В парадигме ООП: В одном массиве записано количество мячей, забитых футбольной командой в каждой из 20 игр, в другом - количество пропущенных мячей в этой же игре. Для каждой игры определите словесный результат игры (выигрыш, проигрыш или ничью)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Задача №1 | |
# В одном массиве записано количество мячей, забитых футбольной командой в каждой из 20 игр, | |
# в другом - количество пропущенных мячей в этой же игре. | |
# Для каждой игры определите словесный результат игры (выигрыш, проигрыш или ничью) | |
class Game | |
attr_accessor :scored, :missed, :result | |
def match_result | |
@result = case @scored <=> @missed | |
when 1 then 'Win' | |
when 0 then 'Draw' | |
when -1 then 'Lose' | |
end | |
end | |
end | |
p goals_scored = Array.new(20) { rand(0..5) } | |
p goals_missed = Array.new(20) { rand(0..5) } | |
goals_scored.size.times do |i| | |
Game.new.tap do |game| | |
game.scored = goals_scored[i] | |
game.missed = goals_missed[i] | |
p game.match_result | |
end | |
end |
Не хорошо объединять код который вычисляет значения и код вывода на экран:
Как бы ты разбил?result = @goals_scored[i] - @goals_missed[i] if result.positive? puts "Win with the score #{@goals_scored[i]}:#{@goals_missed[i]}" elsif result.negative? puts "Loss with the score #{@goals_scored[i]}:#{@goals_missed[i]}" else puts "Tie draw #{@goals_scored[i]}:#{@goals_missed[i]}" end
добавить метод для вычисления результата
Ну так ты не разделил:
def print_results
@result.each do |score|
if score.positive?
puts "Win"
elsif score.negative?
puts "Lose"
else
puts "Tie draw"
end
end
end
тут одновременно идет определение выиграл/проиграл/ничья и тут же мы печатаем
И счет содержит одна игра, а не все вместе
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Game