A+B: Difference between revisions
m Alphabetize |
→Solution: whitespace improvements |
||
Line 25: | Line 25: | ||
|} |
|} |
||
= |
= Solutions = |
||
=={{header|C}}== |
=={{header|C}}== |
||
⚫ | |||
⚫ | |||
⚫ | |||
#include <stdio.h> |
#include <stdio.h> |
||
main() |
main() |
||
Line 50: | Line 49: | ||
printf("%d\n", a + b); |
printf("%d\n", a + b); |
||
return 0; |
return 0; |
||
⚫ | |||
} |
|||
⚫ | |||
=={{header|C++}}== |
=={{header|C++}}== |
||
<lang cpp> |
<lang cpp>// Standard input-output streams |
||
// Standard input-output streams |
|||
#include <iostream> |
#include <iostream> |
||
using namespace std; |
using namespace std; |
||
Line 64: | Line 61: | ||
cout << a + b << endl; |
cout << a + b << endl; |
||
return 0; |
return 0; |
||
⚫ | |||
} |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
// Output file: output.txt |
// Output file: output.txt |
||
#include <fstream> |
#include <fstream> |
||
Line 79: | Line 74: | ||
out << a + b << endl; |
out << a + b << endl; |
||
return 0; |
return 0; |
||
⚫ | |||
} |
|||
⚫ | |||
=={{header|C_sharp|C#}}== |
=={{header|C_sharp|C#}}== |
||
<lang csharp> |
<lang csharp>using System.IO; |
||
using System.IO; |
|||
class plus { |
class plus { |
||
Line 98: | Line 91: | ||
} |
} |
||
} |
} |
||
⚫ | |||
} |
|||
⚫ | |||
=={{header|Factor}}== |
=={{header|Factor}}== |
||
Line 106: | Line 98: | ||
[ string>number ] bi@ + |
[ string>number ] bi@ + |
||
number>string print ;</lang> |
number>string print ;</lang> |
||
<pre> |
|||
( scratchpad ) a+b |
|||
2 2 |
|||
4 |
|||
⚫ | |||
=={{header|Haskell}}== |
=={{header|Haskell}}== |
||
<lang text> |
<lang text>import Control.Monad |
||
import Control.Monad |
|||
main = liftM2 (+) readLn readLn >>= print |
main = liftM2 (+) readLn readLn >>= print</lang> |
||
</lang> |
|||
=={{header|Java}}== |
=={{header|Java}}== |
||
Line 156: | Line 147: | ||
out.println(nextInt() + nextInt()); |
out.println(nextInt() + nextInt()); |
||
} |
} |
||
⚫ | |||
} |
|||
</lang> |
|||
<lang java>import java.io.*; |
<lang java>import java.io.*; |
||
Line 180: | Line 170: | ||
=={{header|Pascal}}== |
=={{header|Pascal}}== |
||
<lang pascal> |
<lang pascal>var |
||
var |
|||
a, b: integer; |
a, b: integer; |
||
begin |
begin |
||
readln(a, b); |
readln(a, b); |
||
writeln(a + b); |
writeln(a + b); |
||
end. |
end.</lang> |
||
</lang> |
|||
Same with input from file <tt>input.txt</tt> and output from file <tt>output.txt</tt>. |
Same with input from file <tt>input.txt</tt> and output from file <tt>output.txt</tt>. |
||
<lang pascal> |
<lang pascal>var |
||
var |
|||
a, b: integer; |
a, b: integer; |
||
begin |
begin |
||
Line 199: | Line 186: | ||
close(input); |
close(input); |
||
close(output); |
close(output); |
||
end. |
end.</lang> |
||
</lang> |
|||
=={{header|PicoLisp}}== |
=={{header|PicoLisp}}== |
||
Line 208: | Line 194: | ||
=={{header|Scheme}}== |
=={{header|Scheme}}== |
||
<lang scheme> |
<lang scheme>(write (+ (read) (read)))</lang> |
||
(write (+ (read) (read))) |
|||
</lang> |
|||
=={{header|Python}}== |
=={{header|Python}}== |
||
===Console=== |
===Console=== |
||
<lang python> |
<lang python>r = raw_input().split() |
||
⚫ | |||
r = raw_input().split() |
|||
⚫ | |||
</lang> |
|||
===File=== |
===File=== |
||
<lang python> |
<lang python>fin = open("input.txt", "r") |
||
fin = open("input.txt", "r") |
|||
fout = open("output.txt","w") |
fout = open("output.txt","w") |
||
r = fin.readline().split() |
r = fin.readline().split() |
||
fout.write(str(int(r[0]) + int(r[1]))) |
fout.write(str(int(r[0]) + int(r[1])))</lang> |
||
</lang> |
|||
=={{header|Ruby}}== |
=={{header|Ruby}}== |
||
⚫ | |||
<lang ruby> |
|||
⚫ | |||
</lang> |
Revision as of 19:31, 8 April 2010
You are encouraged to solve this task according to the task description, using any language you may know.
A+B - in programming contests, classic problem, which is given so contestants can gain familiarity with online judging system being used.
A+B is one of few problems on contests, which traditionally lacks fabula.
Problem statement
Given 2 integer numbers, A and B. One needs to find their sum.
Input data
In input stream, two integer numbers are written, separated by space.
Output data
In output, should be one integer be written: sum of A and B.
Example
Input | Output |
---|---|
2 2 | 4 |
3 2 | 5 |
Solutions
C
<lang c>// Standard input-output streams
- include <stdio.h>
main() {
int a, b; scanf("%d%d", &a, &b); printf("%d\n", a + b);
} </lang> <lang c> // Input file: input.txt // Output file: output.txt
- include <stdio.h>
int main() {
freopen("input.txt", "rt", stdin); freopen("output.txt", "wt", stdout); int a, b; scanf("%d%d", &a, &b); printf("%d\n", a + b); return 0;
}</lang>
C++
<lang cpp>// Standard input-output streams
- include <iostream>
using namespace std; int main() {
int a, b; cin >> a >> b; cout << a + b << endl; return 0;
}</lang> <lang cpp>// Input file: input.txt // Output file: output.txt
- include <fstream>
using namespace std; int main() {
ifstream in("input.txt"); ofstream out("output.txt"); int a, b; in >> a >> b; out << a + b << endl; return 0;
}</lang>
C_sharp
<lang csharp>using System.IO;
class plus { public static void Main(string[] args) { int a,b; { StreamReader reader = new StreamReader("plus.in"); a = int.Parse(reader.ReadLine()); b = int.Parse(reader.ReadLine()); StreamWriter writer = new StreamWriter("plus.out"); writer.WriteLine(a+b); writer.Close(); } } }</lang>
Factor
<lang factor>: a+b ( -- )
readln " " split1 [ string>number ] bi@ + number>string print ;</lang>
( scratchpad ) a+b 2 2 4
Haskell
<lang text>import Control.Monad
main = liftM2 (+) readLn readLn >>= print</lang>
Java
<lang java>import java.util.*;
public class Sum2 {
public static void main(String[] args) { Scanner in = new Scanner(System.in); // Standard input System.out.println(in.nextInt() + in.nextInt()); // Standard output }
}</lang> Object of class Scanner works slow enough, because of that contestants prefer to avoid its use. Often, longer solution works faster and easily scales to problems.
<lang java>import java.io.*; import java.util.*;
public class SumDif {
StreamTokenizer in; PrintWriter out;
public static void main(String[] args) throws IOException { new SumDif().run(); }
private int nextInt() throws IOException { in.nextToken(); return (int)in.nval; }
public void run() throws IOException { in = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in))); // Standard input out = new PrintWriter(new OutputStreamWriter(System.out)); // Standard output solve(); out.flush(); }
private void solve() throws IOException { out.println(nextInt() + nextInt()); }
}</lang>
<lang java>import java.io.*;
public class AplusB { public static void main(String[] args) { try { StreamTokenizer in = new StreamTokenizer(new FileReader("input.txt")); in.nextToken(); int a = (int) in.nval; in.nextToken(); int b = (int) in.nval; FileWriter outFile = new FileWriter("output.txt"); outFile.write(Integer.toString(a + b)); outFile.close(); } catch (IOException e) { System.out.println("IO error"); } } }</lang>
Pascal
<lang pascal>var
a, b: integer;
begin
readln(a, b); writeln(a + b);
end.</lang> Same with input from file input.txt and output from file output.txt. <lang pascal>var
a, b: integer;
begin
reset(input, 'input.txt'); rewrite(output, 'output.txt'); readln(a, b); writeln(a + b); close(input); close(output);
end.</lang>
PicoLisp
<lang PicoLisp>(+ (read) (read)) 3 4 -> 7</lang>
Scheme
<lang scheme>(write (+ (read) (read)))</lang>
Python
Console
<lang python>r = raw_input().split() print int(r[0]) + int(r[1])</lang>
File
<lang python>fin = open("input.txt", "r") fout = open("output.txt","w") r = fin.readline().split() fout.write(str(int(r[0]) + int(r[1])))</lang>
Ruby
<lang ruby>puts gets.split(/\s+/).map{|x| x.to_i}.inject{|sum, x| sum + x}</lang>