Сегодня мы продолжим решать задачи в нашей системе программирования и рассмотрим новую функцию:
Функция INT
Назначение функции весьма простое – отбрасывание дробной части числа. Результат данной функции всегда будет целое число. Если в задачах требуется найти, например, количество человек, автомобилей, контейнеров и т.д. мы должны понимать, что ответ не может быть дробным, даже если результат вычисляется путем деления.
Пример задачи:
Рассчитать необходимое количество 5-ти тонный контейнеров для отправки груза массой 18 тонн.
Решение: Для решения нам необходимо 18 тонн разделить на 5 тонн: 18 / 5 = 3,6. Но мы понимаем, что не может быть 3 целых 6 десятых контейнера. Сначала определим, сколь полных контейнеров нам необходимо, для этого в результате деления необходимо отбросить дробную часть. Получилось 3 целых контейнера. Затем если 18 не делится нацело на 5 нужно добавить 1 контейнер. Т.е. для 20 тонн груза нужно будет 4 контейнера (20 делится на 5 без остатка), а для 21 тонны груза нужно будет 5 контейнеров (21 не делится на 5 без остатка, значит +1 контейнер).
Оформим решение этой задачи на языке GameLogo:переменная kk переменная gr переменная vk спроси "Введите вес груза в тоннах:", gr спроси "Введите вместимость контейнера в тоннах:", vk если gr/vk = int(gr/vk) то kk = gr/vk иначе kk = int(gr/vk)+1 пиши "Для "+gr+" т. груза требуется "+kk+" шт. "+vk+"-тонных контейнеров" |
Введите вес груза в тоннах: 20 Введите вместимость контейнера в тоннах: 5 Для 20 т. груза требуется 4 шт. 5-тонных контейнеров |
Введите вес груза в тоннах: 21 Введите вместимость контейнера в тоннах: 5 Для 21 т. груза требуется 5 шт. 5-тонных контейнеров |
Несколько слов о программе. Переменные: kk – количество контейнеров, gr – вес груза в тоннах, vk – вместимость контейнера в тоннах. В проверке условия проверяем gr / vk = int ( gr / vk ). Смысл проверки я описал перед задачей: левая часть условия – простое деление, правая часть условия – целая часть от деления. Если они равны, значит масса груза делится на вместимость контейнера нацело, например 20 / 5 = int ( 20 / 5 ) (выражение истинно, так как 4=4), а это значит количество контейнеров можно найти простым делением. Если масса груза не делится на вместимость контейнера нацело, например 21 / 5 = int ( 21 / 5 ) (выражение ложно, так как 4,2 не равно 4), а это значит количество контейнеров можно найти как целая часть от деления + 1.