Числа и моды с использованием python, простой вопрос - PullRequest
0 голосов
/ 19 июня 2020

Учитывая неотрицательное число «num», вернуть True, если num находится в пределах 2 от кратного 10. Примечание: (a% b) - это остаток от деления a на b, поэтому (7% 5) равно 2 .

В основном знаю, как кодировать для этого типа вещей, и это считается простым, но я просто не могу понять вопрос. Помогите, добрый незнакомец!

Ответы [ 2 ]

0 голосов
/ 19 июня 2020

добро пожаловать в stackoverflow.

Это означает, что мы должны вернуть истину, если числовой модуль 10 находится в диапазоне 2

 k=int(input())
 p=k%10
 if(10-p)<=2 or (10-(10-p))<=2):
     return True
 else:
     return False

В условии if рассматриваются два возможных исхода, p будет либо в [8,10], либо в [10,12]. Надеюсь, это поможет

0 голосов
/ 19 июня 2020

Вы хотите, чтобы num находился в пределах 2 от 10, 20, 30 ... итак, num = 8, 9, 10, 11, 12 ... 18, 19, 20, 21, 22 и так далее ... все должны возвращать True.

Используя свойства мода 10, это означает, что (num% 10) ≤ 2 или (num% 10) ≥ 8, поскольку (num% 10) неотрицательно и также не может превышать 10.

def my_func(num):
    if (num % 10 <= 2) or (num % 10 >= 8): 
        return True
    else:
        return False

Пример вывода:

>>> my_func(18)
    True
>>> my_func(22)
    True
>>> my_func(23)
    False
...