50
\$\begingroup\$

Input: Two integers. Preferably decimal integers, but other forms of numbers can be used. These can be given to the code in standard input, as arguments to the program or function, or as a list.

Output: Their sum. Use the same format for output integers as input integers. For example, the input 5 16 would lead to the output 21.

Restrictions: No standard loopholes please. This is , answer in lowest amount of bytes wins.

Notes: This should be fairly trivial, however I'm interested to see how it can be implemented. The answer can be a complete program or a function, but please identify which one it is.

Test cases:

1 2 -> 3
14 15 -> 29
7 9 -> 16
-1 8 -> 7
8 -9 -> -1
-8 -9 -> -17

Or as CSV:

a,b,c
1,2,3
14,15,29
7,9,16
-1,8,7
8,-9,-1
-8,-9,-17

Leaderboard

var QUESTION_ID=84260,OVERRIDE_USER=8478;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SIZE}}",o.size).replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var SCORE_REG=/<h\d>\s*([^\n,]*[^\s,]),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/,OVERRIDE_REG=/^Override\s*header:\s*/i;
body{text-align:left!important}#answer-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"> <div id="answer-list"> <h2>Leaderboard</h2> <table class="answer-list"> <thead> <tr><td></td><td>Author</td><td>Language</td><td>Size</td></tr></thead> <tbody id="answers"> </tbody> </table> </div><div id="language-list"> <h2>Winners by Language</h2> <table class="language-list"> <thead> <tr><td>Language</td><td>User</td><td>Score</td></tr></thead> <tbody id="languages"> </tbody> </table> </div><table style="display: none"> <tbody id="answer-template"> <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table> <table style="display: none"> <tbody id="language-template"> <tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table>

\$\endgroup\$
  • 28
    \$\begingroup\$ This is quite trivial, but not really simpler than, e.g., the Hello World catalog. Given that the ability to add integers is one of our two requirements for programming languages, I'd say it's worthwhile to have if properly specified. \$\endgroup\$ – Dennis Jul 2 '16 at 0:48
  • 2
    \$\begingroup\$ Can the answer take input with preceding zeros as default? e.g. 5 16 is inputted as 005 016 \$\endgroup\$ – FinW Dec 4 '16 at 11:56
  • 1
    \$\begingroup\$ @FinW Sure. As long as they don't get interpreted as octal. \$\endgroup\$ – anna328p Dec 4 '16 at 20:47

195 Answers 195

1
3 4 5 6
7
0
\$\begingroup\$

Whispers, 34 bytes

> Input
> Input
>> 1+2
>> Output 3

Try it online!

Don't worry, this doesn't just Output 3, or perform 1+2

| improve this answer | |
\$\endgroup\$
0
\$\begingroup\$

C++, 30 bytes

[](auto a,auto b){return a+b;}

Try it online

| improve this answer | |
\$\endgroup\$
  • 1
    \$\begingroup\$ (int a,int b) is shorter, and within the rules. \$\endgroup\$ – Toby Speight Jun 4 '18 at 16:25
0
\$\begingroup\$

Pyth - 5 Bytes

AQ+GH

A      Set variables G and H to the first two elements of
 Q     Input;
       Implicitly Print
   G   G
  +    plus
    H  H
| improve this answer | |
\$\endgroup\$
  • 1
    \$\begingroup\$ s? \$\endgroup\$ – hakr14 Apr 15 '18 at 0:56
0
\$\begingroup\$

SNOBOL4 (CSNOBOL4), 26 bytes

 OUTPUT =INPUT + INPUT
END

Try it online!

| improve this answer | |
\$\endgroup\$
0
\$\begingroup\$

Beatnik, 9 bytes

x x kg ja

Try it online!

I/O in codepoint values, so !! -> B, B! -> c. Works with larger numbers on Unicode interpreters.

| improve this answer | |
\$\endgroup\$
0
\$\begingroup\$

√ å ı ¥ ® Ï Ø ¿, 3 bytes

i+o

Try it online!

i+o
i    takes input as a flattened list
 +   adds
  o  outputs
| improve this answer | |
\$\endgroup\$
0
\$\begingroup\$

jamal, 22 characters

(12 characters code + 10 characters command line options)

{#+ {a} {b}}

Strictly because the question owner wrote “I'm interested to see how it can be implemented”.

Sample run:

bash-4.4$ perl jamal.pl -Da=5 -Db=16 add.jam
21
| improve this answer | |
\$\endgroup\$
0
\$\begingroup\$

m4, 19 characters

(9 characters code + 10 characters command line options)

eval(a+b)

Strictly because the question owner wrote “I'm interested to see how it can be implemented”.

Sample run:

bash-4.4$ m4 -Da=5 -Db=16 <<< 'eval(a+b)'
21

Try it online!

| improve this answer | |
\$\endgroup\$
0
\$\begingroup\$

Flobnar, 4 bytes

&
+@

Try it online!

| improve this answer | |
\$\endgroup\$
0
\$\begingroup\$

F# (Mono), 3 bytes

(+)

In F#, the + operator is defined as a function named (+).

The following prints 3 and shows how to pass parameters to this function. To me, this is the clearest way to see that (+) is actually a function.

printf "%d" ((+) 1 2)

Try it online!

| improve this answer | |
\$\endgroup\$
0
\$\begingroup\$

PHP, 20 bytes

Assuming the script will always have 2 arguments

<?php
$argv[0] = 10;
$argv[1] = 23;
?>
<?=array_sum($argv); // Well, all the arguments are stored on the $argv array
                     // the array can just be added

Try it online!

| improve this answer | |
\$\endgroup\$
0
\$\begingroup\$

RTFM, 24 bytes

Btw, it's my first answer on PPCG.

041 x 041 y 070 010[x,y]
| improve this answer | |
\$\endgroup\$
  • 1
    \$\begingroup\$ Welcome to the site! \$\endgroup\$ – Wheat Wizard Dec 27 '18 at 15:13
0
\$\begingroup\$

Pepe 19 bytes

REeerEeeREEEEEEReEE

Try it not online but at the online interpreter

My first Pepe answer... made me want to reeeeeee (not reeally)

REee #Input first integer
rEee #Input second integer
REEEEEE #Add two integers
ReEE #Print result as integer
| improve this answer | |
\$\endgroup\$
-1
\$\begingroup\$

Racket 7 bytes

(+ a b)

Usage:

(define (f a b)
  (+ a b)
)

Testing:

(f 5 6)

Output:

11
| improve this answer | |
\$\endgroup\$
-1
\$\begingroup\$

Wireworld (Non-Competing)

This much answers, no wireworld? Man, Wireworld had these binary adders laying around from ages ago!

Where I got the binary adder

| improve this answer | |
\$\endgroup\$
  • 8
    \$\begingroup\$ This could be improved if it was a full adder and if you included the cell count. \$\endgroup\$ – NonlinearFruit Mar 3 '17 at 22:50
  • 1
    \$\begingroup\$ Did you get around to implementing the top comment? \$\endgroup\$ – MilkyWay90 Jul 26 '19 at 3:56
1
3 4 5 6
7

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.