• Сделать задачу Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, оканчивающееся на 6. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 6. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — минимальное число, оканчивающееся на 6.

Ответы 5

  • в условии же сказано "В последовательности всегда имеется число, оканчивающееся на 6. "так что наверно это лишняя проверка только)
    • Автор:

      skinner
    • 6 лет назад
    • 0
  • 1. Мне кажется, что лучше перестраховаться и предотвратить непредсказуемую работу программы, если такого числа всё-таки не будет, и станет непонятно "что же оно там выводит" 2. Этот код будет так же работать и с любыми вещественными числами (в том числе и с отрицательными), а не только с натуральными как в условии. Однако, если их нет - это работе никак не мешает. 3. В вашем коде, например, объявляется массив на 1000 элементов и если k=10, то остальные 990 элементов висят в памяти просто мусором
  • Так что, пожалуй, здесь нет ничего критически лишнего)
    • Автор:

      joseph
    • 6 лет назад
    • 0
  • наши программы не идеальны, например у вас:1)если ввести количество чисел n например 5000.тогда ваша программа сразу говорит "В последовательности отсутствует число, оканчивающееся на 6" и закрывается.2)по поводу мусора - 4 килобайта никому не помешают, а постоянные операции вроде таких, как strToInt сильно замедляли работу кода на старых машинах (которые были в 70х)это так, к слову)а программу ты написал хорошо, сделал логику без массива и сократил код.
    • Автор:

      oreo4ilz
    • 6 лет назад
    • 0
  • Да, спасибо за замечания, видел ошибки изначально, но поленился исправлять. Исправил сейчас. Это больше "косметические" исправления - дописал несколько исключений и готово. Использование же массива привязывает к нему архитектуру программы. Если же после захотите внести изменения, исключающие массив - придётся всё переписывать.
    • Автор:

      barker
    • 6 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years