• Karyoplasma
    link
    fedilink
    arrow-up
    32
    arrow-down
    1
    ·
    edit-2
    1 year ago

    Take the last digit of the number, double it and subtract it from the rest. If that new number is divisible by 7, the original one is as well. For your example:

    2794 - 6 = 2788

    I know 2800 is divisible by seven, so 2788 is not. Thus 27943 is not divisible by 7.

    Quick maff shows that neither subtracting 3 or adding 4 will make the original number divisible by 7. Adding 1 or subtracting 6 will tho.

      • Karyoplasma
        link
        fedilink
        arrow-up
        3
        ·
        1 year ago

        For divisibility by 13, take the last number, multiply by 4 and add to the rest.

        For divisibility by 17, take the last number, multiply by 5 and subtract from the rest.

        For divisibility by 19, take the last number, multiply by 2 and add to the rest.

        In fact, you can adapt the method to check for divisibility by any prime number k.

    • Match!!@pawb.social
      link
      fedilink
      English
      arrow-up
      13
      ·
      1 year ago

      Quick check for divisibility: subtract 7 from it. If the new number is divisible by 7, then the original number is too

      • TauZero@mander.xyz
        link
        fedilink
        arrow-up
        7
        ·
        1 year ago

        There is a mathematical algorithm that proves this works in all cases. However this rule is not actually all that impressive as it appears at first glance! The number of operations (comparisons/subtractions/multiplications) you need to do is equivalent to just long-dividing the number by 7.

        Consider: each operation of the rule removes one digit from the end. But you could just as easily apply the rule like “If the first digit is >=7, subtract 7 from it. Else, subtract the biggest multiple of 7 that will fit from the first two digits.” To skip multiplying, you can use the following jump table: if the first digit is 6, subtract 54 from the first 2 digits, if 5 subtract 49, if 4: 35, if 3: 28, if 2: 14, if 1: 07. That will also remove one digit from the front! But now you are just doing long division.

    • AccountMaker@slrpnk.net
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      1 year ago

      But what about 14, 21 and 28?

      14 - 4*2 = 6, not divisible by 7

      21 - 1*2 = 19, not divisible by 7

      28 - 8*2 = 12, not divisible by 7

      Or did I misunderstand the algorithm?

      EDIT: I didn’t realize that you remove the last digit when subtracting, got corrected in the replies.

      • Colalextrast@lemmynsfw.com
        link
        fedilink
        English
        arrow-up
        7
        ·
        edit-2
        1 year ago

        It goes like this

        1. create 2 distinct numbers by isolating the last digit from the other. For example, 154 becomes 15 and 4.

        2. double the number derived from the last digit. So, the four becomes 8.

        3. subtract from the number derived from the preceeding digits. 15 - 8.

        4. the resulting number is 7. Seven is divisible by 7, so we know 154 is divisible by 7.

      • Kwdg
        link
        fedilink
        arrow-up
        4
        ·
        edit-2
        1 year ago

        Yeah you got it wrong, it’s

        1 - 4*2 = -7

        2 - 1*2 = 0

        2 - 8*2 = -14