Am I not good enough for you?












2












$begingroup$


Background:



The current Perfect Numbers challenge is rather flawed and complicated, since it asks you to output in a complex format involving the factors of the number. This is a purely decision-problem repost of the challenge.



Challenge



Given a positive integer through any standard input format, output whether it is not perfect.



A perfect number is a number that is equal to the sum of all its proper divisors (its positive divisors less than itself). For example, $6$ is a perfect number, since its divisors are $1,2,3$, which sum up to $6$, while $12$ is not a perfect number since its divisors ( $1,2,3,4,6$ ) sum up to $16$, not $12$.



Test Cases:



Imperfect:
1,12,13,18,20,1000,33550335

Perfect:
6,28,496,8128,33550336,8589869056


Rules




  • Your program doesn't have to complete the larger test cases, if there's memory or time constraints, but it should be theoretically able to if it were given more memory/time.

  • Output can be two distinct and consistent values through any allowed output format. If it isn't immediately obvious what represents Truthy/Falsey, please make sure to specify in your answer.


    • This means your values don't have to be literally Truthy/Falsey. Your Truthy output may evaluate to false in your language and vice-versa.












share|improve this question











$endgroup$












  • $begingroup$
    Wait, so truthy is for values that aren't perfect, and falsey is for values that are?
    $endgroup$
    – Esolanging Fruit
    37 mins ago










  • $begingroup$
    @EsolangingFruit Yes, though the actual output values don't really matter, so you can output true for perfect numbers if you wish
    $endgroup$
    – Jo King
    35 mins ago










  • $begingroup$
    Fair enough, but wording the challenge as "output whether it is not perfect" makes the test cases slightly confusing if you interpret "truthy" as meaning "values corresponding to true".
    $endgroup$
    – Esolanging Fruit
    33 mins ago










  • $begingroup$
    @EsolangingFruit Good point. I've renamed the test cases to Imperfect/Perfect to make it clearer
    $endgroup$
    – Jo King
    32 mins ago
















2












$begingroup$


Background:



The current Perfect Numbers challenge is rather flawed and complicated, since it asks you to output in a complex format involving the factors of the number. This is a purely decision-problem repost of the challenge.



Challenge



Given a positive integer through any standard input format, output whether it is not perfect.



A perfect number is a number that is equal to the sum of all its proper divisors (its positive divisors less than itself). For example, $6$ is a perfect number, since its divisors are $1,2,3$, which sum up to $6$, while $12$ is not a perfect number since its divisors ( $1,2,3,4,6$ ) sum up to $16$, not $12$.



Test Cases:



Imperfect:
1,12,13,18,20,1000,33550335

Perfect:
6,28,496,8128,33550336,8589869056


Rules




  • Your program doesn't have to complete the larger test cases, if there's memory or time constraints, but it should be theoretically able to if it were given more memory/time.

  • Output can be two distinct and consistent values through any allowed output format. If it isn't immediately obvious what represents Truthy/Falsey, please make sure to specify in your answer.


    • This means your values don't have to be literally Truthy/Falsey. Your Truthy output may evaluate to false in your language and vice-versa.












share|improve this question











$endgroup$












  • $begingroup$
    Wait, so truthy is for values that aren't perfect, and falsey is for values that are?
    $endgroup$
    – Esolanging Fruit
    37 mins ago










  • $begingroup$
    @EsolangingFruit Yes, though the actual output values don't really matter, so you can output true for perfect numbers if you wish
    $endgroup$
    – Jo King
    35 mins ago










  • $begingroup$
    Fair enough, but wording the challenge as "output whether it is not perfect" makes the test cases slightly confusing if you interpret "truthy" as meaning "values corresponding to true".
    $endgroup$
    – Esolanging Fruit
    33 mins ago










  • $begingroup$
    @EsolangingFruit Good point. I've renamed the test cases to Imperfect/Perfect to make it clearer
    $endgroup$
    – Jo King
    32 mins ago














2












2








2





$begingroup$


Background:



The current Perfect Numbers challenge is rather flawed and complicated, since it asks you to output in a complex format involving the factors of the number. This is a purely decision-problem repost of the challenge.



Challenge



Given a positive integer through any standard input format, output whether it is not perfect.



A perfect number is a number that is equal to the sum of all its proper divisors (its positive divisors less than itself). For example, $6$ is a perfect number, since its divisors are $1,2,3$, which sum up to $6$, while $12$ is not a perfect number since its divisors ( $1,2,3,4,6$ ) sum up to $16$, not $12$.



Test Cases:



Imperfect:
1,12,13,18,20,1000,33550335

Perfect:
6,28,496,8128,33550336,8589869056


Rules




  • Your program doesn't have to complete the larger test cases, if there's memory or time constraints, but it should be theoretically able to if it were given more memory/time.

  • Output can be two distinct and consistent values through any allowed output format. If it isn't immediately obvious what represents Truthy/Falsey, please make sure to specify in your answer.


    • This means your values don't have to be literally Truthy/Falsey. Your Truthy output may evaluate to false in your language and vice-versa.












share|improve this question











$endgroup$




Background:



The current Perfect Numbers challenge is rather flawed and complicated, since it asks you to output in a complex format involving the factors of the number. This is a purely decision-problem repost of the challenge.



Challenge



Given a positive integer through any standard input format, output whether it is not perfect.



A perfect number is a number that is equal to the sum of all its proper divisors (its positive divisors less than itself). For example, $6$ is a perfect number, since its divisors are $1,2,3$, which sum up to $6$, while $12$ is not a perfect number since its divisors ( $1,2,3,4,6$ ) sum up to $16$, not $12$.



Test Cases:



Imperfect:
1,12,13,18,20,1000,33550335

Perfect:
6,28,496,8128,33550336,8589869056


Rules




  • Your program doesn't have to complete the larger test cases, if there's memory or time constraints, but it should be theoretically able to if it were given more memory/time.

  • Output can be two distinct and consistent values through any allowed output format. If it isn't immediately obvious what represents Truthy/Falsey, please make sure to specify in your answer.


    • This means your values don't have to be literally Truthy/Falsey. Your Truthy output may evaluate to false in your language and vice-versa.









code-golf number decision-problem number-theory factoring






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 32 mins ago







Jo King

















asked 52 mins ago









Jo KingJo King

24.6k357126




24.6k357126












  • $begingroup$
    Wait, so truthy is for values that aren't perfect, and falsey is for values that are?
    $endgroup$
    – Esolanging Fruit
    37 mins ago










  • $begingroup$
    @EsolangingFruit Yes, though the actual output values don't really matter, so you can output true for perfect numbers if you wish
    $endgroup$
    – Jo King
    35 mins ago










  • $begingroup$
    Fair enough, but wording the challenge as "output whether it is not perfect" makes the test cases slightly confusing if you interpret "truthy" as meaning "values corresponding to true".
    $endgroup$
    – Esolanging Fruit
    33 mins ago










  • $begingroup$
    @EsolangingFruit Good point. I've renamed the test cases to Imperfect/Perfect to make it clearer
    $endgroup$
    – Jo King
    32 mins ago


















  • $begingroup$
    Wait, so truthy is for values that aren't perfect, and falsey is for values that are?
    $endgroup$
    – Esolanging Fruit
    37 mins ago










  • $begingroup$
    @EsolangingFruit Yes, though the actual output values don't really matter, so you can output true for perfect numbers if you wish
    $endgroup$
    – Jo King
    35 mins ago










  • $begingroup$
    Fair enough, but wording the challenge as "output whether it is not perfect" makes the test cases slightly confusing if you interpret "truthy" as meaning "values corresponding to true".
    $endgroup$
    – Esolanging Fruit
    33 mins ago










  • $begingroup$
    @EsolangingFruit Good point. I've renamed the test cases to Imperfect/Perfect to make it clearer
    $endgroup$
    – Jo King
    32 mins ago
















$begingroup$
Wait, so truthy is for values that aren't perfect, and falsey is for values that are?
$endgroup$
– Esolanging Fruit
37 mins ago




$begingroup$
Wait, so truthy is for values that aren't perfect, and falsey is for values that are?
$endgroup$
– Esolanging Fruit
37 mins ago












$begingroup$
@EsolangingFruit Yes, though the actual output values don't really matter, so you can output true for perfect numbers if you wish
$endgroup$
– Jo King
35 mins ago




$begingroup$
@EsolangingFruit Yes, though the actual output values don't really matter, so you can output true for perfect numbers if you wish
$endgroup$
– Jo King
35 mins ago












$begingroup$
Fair enough, but wording the challenge as "output whether it is not perfect" makes the test cases slightly confusing if you interpret "truthy" as meaning "values corresponding to true".
$endgroup$
– Esolanging Fruit
33 mins ago




$begingroup$
Fair enough, but wording the challenge as "output whether it is not perfect" makes the test cases slightly confusing if you interpret "truthy" as meaning "values corresponding to true".
$endgroup$
– Esolanging Fruit
33 mins ago












$begingroup$
@EsolangingFruit Good point. I've renamed the test cases to Imperfect/Perfect to make it clearer
$endgroup$
– Jo King
32 mins ago




$begingroup$
@EsolangingFruit Good point. I've renamed the test cases to Imperfect/Perfect to make it clearer
$endgroup$
– Jo King
32 mins ago










4 Answers
4






active

oldest

votes


















2












$begingroup$


Japt -!, 4 bytes



¥â¬x


For some reason ¦ doesnt work on tio so I need to use the -! flag and ¥ instead



Try it online!






share|improve this answer











$endgroup$





















    2












    $begingroup$


    R, 33 bytes





    !2*(n=scan())-sum(which(!n%%1:n))


    Try it online!



    Returns TRUE for perfect numbers ans FALSE for imperfect ones.






    share|improve this answer









    $endgroup$













    • $begingroup$
      What do the 2 !s in a row get you?
      $endgroup$
      – CT Hall
      17 mins ago



















    1












    $begingroup$


    CJam, 17 bytes



    ri_,(;{1$%!},:+=


    Try it online!






    share|improve this answer









    $endgroup$





















      1












      $begingroup$

      Javascript, 62



      n=>n==[...Array(n).keys()].filter(a=>n%a<1).reduce((a,b)=>a+b)


      Explanation (although it's pretty simple)



      n=> //return function that takes n
      n== //and returns if n is equal to
      [...Array(n).keys()] //an array [0..(n-1)]...
      .filter(a=>n%a<1) //where all of the elements that are not divisors of n are taken out...
      .reduce((a,b)=>a+b) //summed up


      Thanks to Jo King for the improvement!






      share|improve this answer











      $endgroup$













      • $begingroup$
        thanks! Added that in
        $endgroup$
        – zevee
        30 mins ago











      Your Answer





      StackExchange.ifUsing("editor", function () {
      return StackExchange.using("mathjaxEditing", function () {
      StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
      StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["\$", "\$"]]);
      });
      });
      }, "mathjax-editing");

      StackExchange.ifUsing("editor", function () {
      StackExchange.using("externalEditor", function () {
      StackExchange.using("snippets", function () {
      StackExchange.snippets.init();
      });
      });
      }, "code-snippets");

      StackExchange.ready(function() {
      var channelOptions = {
      tags: "".split(" "),
      id: "200"
      };
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function() {
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled) {
      StackExchange.using("snippets", function() {
      createEditor();
      });
      }
      else {
      createEditor();
      }
      });

      function createEditor() {
      StackExchange.prepareEditor({
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader: {
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      },
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      });


      }
      });














      draft saved

      draft discarded


















      StackExchange.ready(
      function () {
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodegolf.stackexchange.com%2fquestions%2f181350%2fam-i-not-good-enough-for-you%23new-answer', 'question_page');
      }
      );

      Post as a guest















      Required, but never shown

























      4 Answers
      4






      active

      oldest

      votes








      4 Answers
      4






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      2












      $begingroup$


      Japt -!, 4 bytes



      ¥â¬x


      For some reason ¦ doesnt work on tio so I need to use the -! flag and ¥ instead



      Try it online!






      share|improve this answer











      $endgroup$


















        2












        $begingroup$


        Japt -!, 4 bytes



        ¥â¬x


        For some reason ¦ doesnt work on tio so I need to use the -! flag and ¥ instead



        Try it online!






        share|improve this answer











        $endgroup$
















          2












          2








          2





          $begingroup$


          Japt -!, 4 bytes



          ¥â¬x


          For some reason ¦ doesnt work on tio so I need to use the -! flag and ¥ instead



          Try it online!






          share|improve this answer











          $endgroup$




          Japt -!, 4 bytes



          ¥â¬x


          For some reason ¦ doesnt work on tio so I need to use the -! flag and ¥ instead



          Try it online!







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited 34 mins ago

























          answered 40 mins ago









          Luis felipe De jesus MunozLuis felipe De jesus Munoz

          5,59821670




          5,59821670























              2












              $begingroup$


              R, 33 bytes





              !2*(n=scan())-sum(which(!n%%1:n))


              Try it online!



              Returns TRUE for perfect numbers ans FALSE for imperfect ones.






              share|improve this answer









              $endgroup$













              • $begingroup$
                What do the 2 !s in a row get you?
                $endgroup$
                – CT Hall
                17 mins ago
















              2












              $begingroup$


              R, 33 bytes





              !2*(n=scan())-sum(which(!n%%1:n))


              Try it online!



              Returns TRUE for perfect numbers ans FALSE for imperfect ones.






              share|improve this answer









              $endgroup$













              • $begingroup$
                What do the 2 !s in a row get you?
                $endgroup$
                – CT Hall
                17 mins ago














              2












              2








              2





              $begingroup$


              R, 33 bytes





              !2*(n=scan())-sum(which(!n%%1:n))


              Try it online!



              Returns TRUE for perfect numbers ans FALSE for imperfect ones.






              share|improve this answer









              $endgroup$




              R, 33 bytes





              !2*(n=scan())-sum(which(!n%%1:n))


              Try it online!



              Returns TRUE for perfect numbers ans FALSE for imperfect ones.







              share|improve this answer












              share|improve this answer



              share|improve this answer










              answered 20 mins ago









              GiuseppeGiuseppe

              16.8k31052




              16.8k31052












              • $begingroup$
                What do the 2 !s in a row get you?
                $endgroup$
                – CT Hall
                17 mins ago


















              • $begingroup$
                What do the 2 !s in a row get you?
                $endgroup$
                – CT Hall
                17 mins ago
















              $begingroup$
              What do the 2 !s in a row get you?
              $endgroup$
              – CT Hall
              17 mins ago




              $begingroup$
              What do the 2 !s in a row get you?
              $endgroup$
              – CT Hall
              17 mins ago











              1












              $begingroup$


              CJam, 17 bytes



              ri_,(;{1$%!},:+=


              Try it online!






              share|improve this answer









              $endgroup$


















                1












                $begingroup$


                CJam, 17 bytes



                ri_,(;{1$%!},:+=


                Try it online!






                share|improve this answer









                $endgroup$
















                  1












                  1








                  1





                  $begingroup$


                  CJam, 17 bytes



                  ri_,(;{1$%!},:+=


                  Try it online!






                  share|improve this answer









                  $endgroup$




                  CJam, 17 bytes



                  ri_,(;{1$%!},:+=


                  Try it online!







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered 35 mins ago









                  Esolanging FruitEsolanging Fruit

                  8,50932674




                  8,50932674























                      1












                      $begingroup$

                      Javascript, 62



                      n=>n==[...Array(n).keys()].filter(a=>n%a<1).reduce((a,b)=>a+b)


                      Explanation (although it's pretty simple)



                      n=> //return function that takes n
                      n== //and returns if n is equal to
                      [...Array(n).keys()] //an array [0..(n-1)]...
                      .filter(a=>n%a<1) //where all of the elements that are not divisors of n are taken out...
                      .reduce((a,b)=>a+b) //summed up


                      Thanks to Jo King for the improvement!






                      share|improve this answer











                      $endgroup$













                      • $begingroup$
                        thanks! Added that in
                        $endgroup$
                        – zevee
                        30 mins ago
















                      1












                      $begingroup$

                      Javascript, 62



                      n=>n==[...Array(n).keys()].filter(a=>n%a<1).reduce((a,b)=>a+b)


                      Explanation (although it's pretty simple)



                      n=> //return function that takes n
                      n== //and returns if n is equal to
                      [...Array(n).keys()] //an array [0..(n-1)]...
                      .filter(a=>n%a<1) //where all of the elements that are not divisors of n are taken out...
                      .reduce((a,b)=>a+b) //summed up


                      Thanks to Jo King for the improvement!






                      share|improve this answer











                      $endgroup$













                      • $begingroup$
                        thanks! Added that in
                        $endgroup$
                        – zevee
                        30 mins ago














                      1












                      1








                      1





                      $begingroup$

                      Javascript, 62



                      n=>n==[...Array(n).keys()].filter(a=>n%a<1).reduce((a,b)=>a+b)


                      Explanation (although it's pretty simple)



                      n=> //return function that takes n
                      n== //and returns if n is equal to
                      [...Array(n).keys()] //an array [0..(n-1)]...
                      .filter(a=>n%a<1) //where all of the elements that are not divisors of n are taken out...
                      .reduce((a,b)=>a+b) //summed up


                      Thanks to Jo King for the improvement!






                      share|improve this answer











                      $endgroup$



                      Javascript, 62



                      n=>n==[...Array(n).keys()].filter(a=>n%a<1).reduce((a,b)=>a+b)


                      Explanation (although it's pretty simple)



                      n=> //return function that takes n
                      n== //and returns if n is equal to
                      [...Array(n).keys()] //an array [0..(n-1)]...
                      .filter(a=>n%a<1) //where all of the elements that are not divisors of n are taken out...
                      .reduce((a,b)=>a+b) //summed up


                      Thanks to Jo King for the improvement!







                      share|improve this answer














                      share|improve this answer



                      share|improve this answer








                      edited 30 mins ago

























                      answered 38 mins ago









                      zeveezevee

                      22016




                      22016












                      • $begingroup$
                        thanks! Added that in
                        $endgroup$
                        – zevee
                        30 mins ago


















                      • $begingroup$
                        thanks! Added that in
                        $endgroup$
                        – zevee
                        30 mins ago
















                      $begingroup$
                      thanks! Added that in
                      $endgroup$
                      – zevee
                      30 mins ago




                      $begingroup$
                      thanks! Added that in
                      $endgroup$
                      – zevee
                      30 mins ago


















                      draft saved

                      draft discarded




















































                      If this is an answer to a challenge…




                      • …Be sure to follow the challenge specification. However, please refrain from exploiting obvious loopholes. Answers abusing any of the standard loopholes are considered invalid. If you think a specification is unclear or underspecified, comment on the question instead.


                      • …Try to optimize your score. For instance, answers to code-golf challenges should attempt to be as short as possible. You can always include a readable version of the code in addition to the competitive one.
                        Explanations of your answer make it more interesting to read and are very much encouraged.


                      • …Include a short header which indicates the language(s) of your code and its score, as defined by the challenge.



                      More generally…




                      • …Please make sure to answer the question and provide sufficient detail.


                      • …Avoid asking for help, clarification or responding to other answers (use comments instead).





                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function () {
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodegolf.stackexchange.com%2fquestions%2f181350%2fam-i-not-good-enough-for-you%23new-answer', 'question_page');
                      }
                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      SQL Server 17 - Attemping to backup to remote NAS but Access is denied

                      Always On Availability groups resolving state after failover - Remote harden of transaction...

                      Restoring from pg_dump with foreign key constraints