В некоторой игре используются карточки с номерами от 1 до N. На вход программе сначала подаётся число N, не превосходящее 1000, а затем N-1 число - номера карточек (в произвольном порядке). Программа должна вывести номер оставш...

В некоторой игре используются карточки с номерами от 1 до N. На вход программе сначала подаётся число N, не превосходящее 1000, а затем N-1 число - номера карточек (в произвольном порядке). Программа должна вывести номер оставшейся карточки или сооб- щить, что ввод ошибочный (если программа сумела это понять), сло- вом ERROR. Инструментарий, который не рассматривался в задании (например, массивы), не использовать. При заданных ограничениях не все ошибки ввода возможно отловить, но таких тестов не будет.
Гость
Ответ(ы) на вопрос:
Гость
# # Код на ruby 2.2.3p173 max = 0 max_last = 0 min = 1000 min_last = 1000 n = 0 begin     max_last = max     min_last = min     File.open("input.txt", "r") do |infile|         line = infile.gets.strip         p line         n = line.to_i if n == 0         while (line = infile.gets)             p line             number = line.strip.to_i             max = number if max == 0 or number == max + 1             min = number if min == 1000 or number == min - 1             p [min, max]         end     end end until (max == max_last and max < n) or (min > 0 and min == min_last) or (min == 0 and max == n) p max + 1 if max == max_last and max < n p min - 1 if min > 0 and min == min_last p "error" if min == 0 and max == n
Не нашли ответ?
Ответить на вопрос
Похожие вопросы